C

Code of Rob

codeofrob.com · Personal blog · on HN since 2011

Rob Ashton writes about JavaScript, .NET, Node.js game development, CQRS and software design opinions.

What HN saysCommenters cite his view that C#'s main problem is cultural, noting his abrasive style, and link his posts on SOLID and multiplayer games.
35HN people shared it
9linked it in comments
27stories submitted
652story points
5 years agolast shared
2011people per year2026

Most-shared posts

  1. 1
    You have ruined JavaScript
    8 people · 489 points · first shared 2014 · 228 comments on HN
  2. 2
    Why you can't be a good .NET developer
    3 people · 29 points · first shared 2016 · 20 comments on HN
  3. 3
  4. 4
    Look ma, no frameworks
    2 people · 5 points · first shared 2013 · discussion on HN
  5. 5
    Write your genservers in Visual Basic .NET
    2 people · 4 points · first shared 2021 · discussion on HN
  6. 6
    Why I stopped using AMD
    2 people · 2 points · first shared 2013 · discussion on HN
  7. 7
    Working for free and what it taught me
    1 people · 59 points · first shared 2013 · 25 comments on HN
  8. 8
    Erlang – How we do it
    1 people · 3 points · first shared 2015 · discussion on HN
  9. 9
    Learn Functional Programming with Me
    1 people · 3 points · first shared 2016 · discussion on HN
  10. 10
    JQuery is not a framework but I avoid using it too
    1 people · 3 points · first shared 2013 · discussion on HN
  11. 11
    MongoDB hasn't got a sweet spot - why use it?
    1 people · 3 points · first shared 2011 · 1 comments on HN
  12. 12
    Pragmatic view on TDD
    1 people · 2 points · first shared 2013 · discussion on HN
  13. 13
    Lots of small things (on Javascript code management)
    1 people · 2 points · first shared 2013 · discussion on HN
  14. 14
    The Ashton Disinterest Curve – JavaScript and Node
    1 people · 2 points · first shared 2014 · 1 comments on HN
  15. 15
    A Londoner's guide to emigrating to Glasgow
    1 people · 2 points · first shared 2016 · discussion on HN

What HN people wrote when they linked it

moomin · 2017-02-03
Rob Ashton made the point years ago that the principal problem with C# was cultural, not technical. http://codeofrob.com/entries/why-you-cant-be-a-good-.net-developer.htm… Of course, he did it in his classically abrasive style, so not that many people championed the article.
plugnburn · 2016-03-16
You cannot enhance Bootstrap itself easily. Moreover, you cannot rewrite any core functionality clearly done wrong. I don't need a widespread virus called jQuery, I want to write pure JS, and I definitely have no need in that virus to make my website truly responsive. Why use a plugin to make a hamburger menu when you can do it using pure CSS3 and a hidden checkbox? Why all that overhead? http://codeofrob.com/entries/you-have-ruined-javascript.html
platz · 2015-01-22
I like your library/application distinction. For applications I'm not sure open/closed makes as much sense - http://codeofrob.com/entries/my-relationship-with-solid---the-big-o.ht…
mcgwiz · 2013-01-10
Pardon my pedantry, but CQRS doesn't necessitate eventual consistency. Denormalization of domain events into can happen synchronously. It all depends on the needs of the project. If the project information architecture and processes can support a degree of latency (which is implicit in almost any technology providing static screens anyway), then the performance gains of eventual consistency can be realized. A good, nuanced explanation of CQRS is here: http://codeofrob.com/entries/cqrs-is-too-complicated.html
jpadvo · 2012-11-19
I'm a web developer, but am just about to jump into making a multiplayer HTML5 game, just for fun. But after reading this post, and the one linked at the bottom [1], I'm thinking maybe this is going to be pretty valuable professionally. It should give insight from a completely different vantage point on what it means to write good code. By the way, you really should read that other post, too. It offers some interesting ideas to think about. [1] http://codeofrob.com/entries/a-relaxed-attitude-towards-the-pragmatic-…
drewmclellan · 2012-05-07
Looks like the associated blog post is here: http://codeofrob.com/entries/github-live.html
wwweston · 2022-04-21
I was on a team that sunk 9 months into its model for a major project and what I saw bears no resemblance to what you're describing. It's a framework that hated the idioms of its host language, as if the problem with front-end development was that it didn't have the ceremony of Java and the attendant abstractions/"patterns" of a static manifestly typed language. The conceptual overhead alone was ridiculous (as famously described here: http://codeofrob.com/entries/you-have-ruined-javascript.html ), and the payoff in terms of performance was negative on mobile no matter what we did. The fact that I had to know what the digest cycle was is a testament to the leaky nature of the abstractions. The tooling, wow, as far as I could tell batarang was actively broken for a good chunk of 2014 and 2015 and nobody had better suggestions. I've used a lot of libraries/frameworks/languages with their own baggage but I've never had an experience where the differential between what I was hearing and the actual experience was that large, to the point where it's one of the first things I think of when it comes to the hazards of social proof. If I wanted something that heavy again circa 2014, I'd tell myself to just use Ember. Hell, I'd rather use jQuery than Angular.
dhfhduk · 2017-05-17
I have nothing against Kotlin. It seems to be coming out of nowhere to surpass more "tested" languages for lack of a better way of putting it, but as I'm reading about it I can truly see the appeal. The one thing I'm having trouble figuring out, though, is how much it diverges from Java in terms of inheritance, traits, etc. The verbosity of Java is one thing, but its inheritance system is what made me want to pull my hair out. Languages like Scala, Haskell, Rust, etc. are preferable to me in that way. Kotlin seems nice and clean--from what I've seen so far, with this "Android bump", Kotlin native, etc., I could even see it replacing Python--but I worry there's something lurking deeper. This is the clearest thing I've found so far, but it's very old at this point: http://codeofrob.com/entries/looking-at-kotlin---kicking-the-java-inhe… It includes this quote that stokes my fears: "It feels as if the language designers haven't really designed at this point, they've just thrown a load of stuff at the wall because inheritance is something that all Java developers want and given us a few bad ways of doing something as well as something that has the potential to make us write better Java." I don't have any attachment to Scala. However, I do think Scala, Rust, etc. have moved language design forward in significant, fundamental ways, and it would be nice to see those advancements recognized in the Android platform. Take this all with a grain of salt,…
lostcolony · 2015-12-29
This is probably a somewhat fringe sentiment, but reading this reminds me very much of http://codeofrob.com/entries/you-have-ruined-javascript.html (I was making very similar comments while reading this) I'll readily admit I'm biased against OOP; I much prefer functional approaches. When I write Javascript, it tends to be pretty functional, with minimal OOP conventions. But that said...all the problems this addresses are self-inflicted problems. The very start of the article even says as much, "Mixins solve a very common problem in class-centric OOP" - that is, "these problems are only problems because you want to write Javascript in class-centric OOP", something it wasn't really designed for (and the constant attempts have led to Ecmascript 7 and the 'class' keyword, which I find myself shaking my head at; again, see prior link, at trying to make Javascript feel 'enterprisey'). Find another way to go about it maybe? The subclassFactory example he gives...if I saw that in a code base I'd want to punch someone. Because without the writeup he gives, I'd be staring at it, and the functions it calls, for a good 20 minutes before figuring out what it's doing. And all it's doing is trying to shoehorn a specific paradigm into a language not written for it. I mean, you can do it, sure, but -why-? I don't really like Javascript but at least I feel pretty productive in it; why would I make it harder on myself, and everyone who reads my code after me, by trying to make it something…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close