Live data from Hacker News

My 20 year career is technical debt or deprecated

blog.visionarycto.com

471–480 of 585 posts

Re: My 20 year career is technical debt or deprecated

#471
post #443
post #403

Earlier quoted context omitted.

>"It seems like there's a lot of people in the Java community who still think OO is a great idea." Java is not the only language in existence and the OO is a great idea as well as many other paradigms when not being overused. Problem is with the programmers who learn one language / paradigm and would fight tooth and nails to solve all world problems with it no matter how poor for particular case.

Objects are a useful idea. Object Orientation is a terrible, terrible idea. Functions + data (immutable when practical) is all you need for 90%+ of programming, and you should only reach for objects when necessary to manage some well-encapsulated but tricky state. Your default orientation should certainly not be towards objects.

>"Your default orientation should certainly not be towards objects."

My default orientation should be what my experience tells me is the best for particular case.

Re: My 20 year career is technical debt or deprecated

#472
post #358

Earlier quoted context omitted.

> And most devs hating on Java are using an IDE written mainly in Java (all the JetBrains ones): the irony of that one gives me the giggles. Guilty as charged! I hate using Java because everything written in java seems to blend into the same indistinguishable swamp of classes with meaningless names, full of methods that constantly find new and interesting ways to obscure what your program is actually trying to do. De…

I've spent most of my programming life working in OOP. I see people critical of it, but I don't know what the alternative is for the kind of stuff I do for my job (not to say I have a choice in changing how we do it). Does anyone know of an open source project that implements a complex GUI app that doesn't use OOP so I can see what that code can look like?

Any functional react application would fit the criteria I imagine.

Re: My 20 year career is technical debt or deprecated

#473

Earlier quoted context omitted.

I think a lot of it comes from the Spring framework. People saw those gigantic stack traces with all the crazy abstractions and huge names, and took it as the norm. It doesn’t have to be that way (see also Guice). But the Uncle Bob effect is sadly real.

Some genius ported the Spring framework to PHP (and called it Symfony) and we have to live with the BS from Java world in PHP land. Anemic models and lots of indirection. What a sad world we live in.

I did a lot of Java in the past, and ended up in PHP lately. Funny how PHP feels like 'I wanna be Java when I grow up', while Java (quarkus) says 'I dont wanna be Java anymore'.

Then again,Java itself has Spring, starting out as '4 classes for an EJB is insane architecture overload' and ended up in dynamic injection architecture astronaut land.

Re: My 20 year career is technical debt or deprecated

#474

Earlier quoted context omitted.

Well, becoming small-c conservative, to a certain extent, is probably fairly normal, though perhaps not inevitable. Capital-C Conservative, not so much: that doesn't come with age, it comes with wealth.

These things are conflated because it usually takes time to accumulate wealth especially if self-made, so older people will tend to both be richer and more small-c conservative. Also although in the tech industry this link has been broken/inverted, there's usually a correlation between excessive risk taking (i.e. lack of conservatism) and losing all your money. In most sectors of society wealth is built up over time…

Older people being richer is actually a relatively modern phenomenon.

Ref: "Have the Boomers Pinched Their Chiren's Futures", David Willets, Royal Society lecture. https://www.youtube.com/watch?v=ZuXzvjBYW8A

Re: My 20 year career is technical debt or deprecated

#475

Earlier quoted context omitted.

Even some of the most famous recipes can change over time. I’m sure that things like McDonald’s burgers are slightly different now. Perhaps the most enduring a chef can do is invent a new technique.

The chicken nugget and McChicken batter are different from when I worked at McDonald's as a kid. Naturally it was better back then...

IIRC they switch from frying the fries in beef oil to using vegetable oil and the fries have never been quite as good.

Re: My 20 year career is technical debt or deprecated

#476
Skills I learned and are still valid today:

- SQL - Terminal - OO programming travelled pretty well from C#/Java to Objective-C to Swift

Then there's stuff that is still called the same but completely unrecognizable compared to the time I was good at it like HTML / JS / CSS

Re: My 20 year career is technical debt or deprecated

#477

Earlier quoted context omitted.

Does anybody know where I can find a good, substantiated, critique of the common Java coding patterns, including on Android? This niche is such a huge mess that simply documenting all the bad things in a single codebase (along with explanation why they're bad) took me a month. It's tiring and mentally draining to do this: every other line of code you read makes you go "Why. Please, just tell me why anybody could ever…

Don’t bother. Your preferred style will go out of fashion just like the previous ones all have. Chasing this is low value busy work.

> Chasing this is low value busy work.

I disagree. We might understand what I meant by "style"[1] differently. As I think of it, it's comprised of things that have an actual, measurable impact on the effort required to develop the codebase(s) over time. It's not about tabs vs. spaces, snake_case vs. camelCase, or anything even remotely like that. I'm not trying to establish a company-wide set of guidelines for the sake of it - I believe that relatively minor things (in the scope of a single project) can lead to significant savings at the scale of tens of projects and five years of a maintenance window.

As for the guidelines themselves: I don't care what they are, exactly, as long as a) they're there; b) they reduce said effort; and c) they're followed.

Re: My 20 year career is technical debt or deprecated

#478
Is it just me or somehow programming languages and frameworks are not my focus any more? I'm still interested in programming language designs and implementations, but I'm quite neutral on what language/framework to use in my work. There are just too many other things to take priority: organizational structures, system architectures, emerging technologies, new hardware, algorithms, insights in a domain, and etc. Choice of languages barely moves the needle.

Re: My 20 year career is technical debt or deprecated

#479

Interesting how C programming has survived that entire time period in the operating system and embedded worlds, although the spread of multicore hardware running lots of threads in parallel has also led to many changes (but even those changes were beginning to be implemented 20 years ago). 20 years from now, C will probably still be a core language in its niche.

It is, relatively speaking, far easier to write a C compiler[1] than one for any other higher-level language, and the language lends itself to low-level tasks without needing to use Asm. [1] There have been multiple articles on HN where a single person has written a C compiler.

lots of compilers have been written by a single person, including compilers for c++, d, turbo pascal, forth, scheme, ml, haskell, ancient lisp, and so on. craig burley got g77 to the point of compiling useful fortran programs before other people got interested. i think graydon wrote the first versions of the rust compiler himself too

it's probably always better to do it with someone else, because you get better ideas and faster debugging, but pretty much all hlls are possible for a single person to implement

Re: My 20 year career is technical debt or deprecated

#480

Earlier quoted context omitted.

Does anybody know where I can find a good, substantiated, critique of the common Java coding patterns, including on Android? This niche is such a huge mess that simply documenting all the bad things in a single codebase (along with explanation why they're bad) took me a month. It's tiring and mentally draining to do this: every other line of code you read makes you go "Why. Please, just tell me why anybody could ever…

Not a very recent one, but this "Kingdom of nouns" resonates deeply http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom...

[deleted]
Post reply on HN