Settings

Theme

I Regret Being a Hipster in Tech

hikhalil.com

27 points by Knajjars 4 years ago · 19 comments

Reader

thiscatis 4 years ago

The best applications I delivered over the last couple of years were in Symfony 2 to 5. MVC with some jQuery sprinkled on top and it did the job. Want API because the company suddenly wants an app?

No worries, add the RESTbundle and now your controllers are returning JSON or XML rather than Twig rendered html.

Around 2014-2015 I was worried that I missed the Angular or Meteor or Knockout or Ember or something..JS boat but then quickly realised my customers didn't care about JS frameworks and wanted business flows automated and solved.

Now I see NextJS or something solving problems Symfony solved 10 years ago and I just chuckle.

  • Zelphyr 4 years ago

    I read something once from an advertising executive and he said the biggest problem in that industry is that nobody knows the history of it. It's all about the latest, shiny, cool thing and nobody realizes they're repeating the mistakes of the past.

    I feel like we're getting to the same point in software development. I'm seeing things presented as new that were done decades ago.

    "JAMStack!" You mean, how we pretty much had to do things 20 years ago?

sovietmudkipz 4 years ago

The author finds that spending energy on stable software ecosystem provides the psychological security to beat back the urge to study during free time.

I have a similar story of study and my escape has been to learn more about software design instead of frameworks or libraries. For example; DDD teaches how to describe problem spaces and how to talk about solutions in a way that is independent of any particular language or framework.

My learning efforts now seem better spent on building a core set of knowledge that has broader applicability.

  • xupybd 4 years ago

    I've found the same thing. Learning design and architecture really helps. Also, reading books from authors that have been around for a long time helps impart knowledge that isn't so ephemeral.

    Learning functional programming has helped as well. Not that the language I'm learning is so much better than anything else but that it introduces me to new ways of solving problems.

    I also want to invest in my writing. Good documentation is becoming more valuable to me as I age.

  • KnajjarsOP 4 years ago

    This is a very good tip and something developers realise with time.

  • rbjorklin 4 years ago

    What is DDD?

mr_vile 4 years ago

> what is more boring than Rails?

modern PHP? I would contend the OP is still a hipster, but at least he's pointing out that fashionable programming is really toxic for the industry as a whole. Boring technology is good because the ordinary, standard thing is meant to be exactly that, ordinary and standard. Leave the breaking changes, feature churn, evangelising, endlessly-revised howto articles, missing/outdated documentation, etc. where it belongs -- in the "innovative" software.

jstx1 4 years ago

As I get more experienced

- I care less about specific tools and I'm way less dogmatic

- I'm more comfortable learning new tools quickly when it's necessary

- I realise that many new tools can be completely left out which greatly reduces the complexity of the project (you aren't always in a position to do this when you work with other people)

bm3719 4 years ago

Noticed the same pretty early here too. My response was to categorize all tech into ephemeral implementations and more persistent concepts. The latter moves a lot slower. New fundamental ideas just don't come around as quickly as people writing their own take on them or combination of them. Some paths through SE make this easier or harder, i.e. being a front-end dev can easily have you drowning in library churn and simply without the time for any deep thoughts.

It's definitely an important factor to both notice at all and your decision in regards to it has lasting repercussions. In my experience, the majority of devs don't take the conceptual path, so I've tended to let them get excited about NewFancyLibrary and while I focus on more abstract things like architecture, modeling systems, and languages. Seems to work pretty good, since we're both happy with the arrangement.

mouzogu 4 years ago

I must have starred 1000 projects on github without ever looking at them again.

nunez 4 years ago

As long as you know the fundamentals (data structures, algorithms, networking, and operating systems), a programming language (I recommend Python, as its incredibly versatile), and have tried to write at least _something_ mildly complicated in C or C++, you'll pick up almost anything.

  • Scarbutt 4 years ago

    I would categorize Javascript as being more versatile than Python because of browser programming.

    • nunez 4 years ago

      It's definitely more versatile, but I think that's actually one of its disadvantages. It's a prototypal language, so you miss out on learning proper object-oriented programming practices. You can do functional programming, but unless you use TypeScript, the notion of strong typing and type safety isn't there. You _can_ use Node to write client-side JavaScript programs, but you're basically tying your boat onto Chromium/Chrome (because it uses V8).

      This isn't to say that JavaScript isn't capable. It's plenty capable, and when combined with TypeScript, it's pretty powerful. I just think that it's not a great idea as a primary first-principles language.

    • Bayart 4 years ago

      Javascript has an excess of versatility, if anything. Python is the perfect prototyping language, I've found over time. And I took a really long while to board that train, coming from Perl.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection