Unpopular opinions
Belhassen Chelbi

Belhassen Chelbi @belhassen07

About: Get micro lessons about UX design, UX writing, and more: https://sendfox.com/deepcamp

Location:
Tunis
Joined:
Oct 10, 2017

Unpopular opinions

Publish Date: Mar 8 '20
31 74

I have never used Redux, even after using React for 2+ years.

What's your unpopular opinion or something you?

Comments 74 total

  • Ben Halpern
    Ben HalpernMar 8, 2020

    Inelegant software which has a huge following and a big ecosystem is often better than objectively cleaner, better software.

    The reverse is also true if the pendulum swings too far in the other direction.

    • Syed Faraaz Ahmad
      Syed Faraaz AhmadMar 8, 2020

      I relate to this so much! Devs love to hate on Rails so much. I just can't imagine a better tool to make something with ease in a small amount of time

      • Ben Lovy
        Ben LovyMar 8, 2020

        I'm just starting to use rails and I'm a little bit mad at myself for not doing so earlier. At least at the very outset it's hard to understand why I'd use anything else, everything just works.

        • Belhassen Chelbi
          Belhassen ChelbiMar 8, 2020

          I'm mad that I didn't learn it earlier too. But actually, even now I didn't, commited to django, which is kinda of a similar mindset behind the two of them. Love DHH too haha

      • Sigit Prayoga
        Sigit PrayogaMar 9, 2020

        For me, it is PHP who I love to hate. But again, many developers and organizations have achieved more using PHP.

    • Jesse Phillips
      Jesse PhillipsMar 8, 2020

      This is true and I'm part of the problem. I've been thinking about all the suboptimal systems I've learning over the years and how it could be good to move to something more clear or consistent.

      I'm not known to conform to how things are done or avoid new things. But like so many before me I have learned these old systems and we can't move past because we have so much knowledge and documentation in the old.

      If someone chooses a different system, I'm not there to help, I will fall back to the system I know. I also can't make a good recommendation on what to move to.

      However I am also not left behind. Docker is heavily reliant on the concepts of the past. It didn't take much for me to handle because I know bash and the supporting concepts of git.

    • Arthur Vincent Simon
      Arthur Vincent SimonMar 9, 2020

      Yup, support is really very important that it almost trumps everything else.

    • Andreas Møller
      Andreas MøllerJul 19, 2020

      Inelegant software is usually elegant software adopted for real world use

  • chris-pardy
    chris-pardyMar 8, 2020

    My unpopular opinion: Hateing Redux is so often listed as an unpopular opinion amongst React Developers that its become popular.

    • Belhassen Chelbi
      Belhassen ChelbiMar 8, 2020

      I'm not hating though, I really understand where it fits. Still I did like lifting state up.

  • juankOrtiz
    juankOrtizMar 8, 2020

    Still refusing to replace PHP with Node.js (I'm using Laravel, but still...)

  • Mike Healy
    Mike HealyMar 8, 2020

    Didn't alternatives to Redux start to become common about 2 years ago anyway?

    • Belhassen Chelbi
      Belhassen ChelbiMar 8, 2020

      Actually there's a gap year where I didn't code either aand Redux was super popular back then that it was required for react jobs, well, still now but much less. And I didn't use other state management libraries either.

    • Ben Duncan
      Ben DuncanMar 9, 2020

      React ships with context and reducer support built in, so I guess you could say that. There's also MobX which is quite common, but most projects can stick with the state management options built into React.

  • Craig Nicol (he/him)
    Craig Nicol (he/him)Mar 8, 2020

    More JavaScript Frameworks, more text editors, more language options are a good thing.

    Yes, 99% of code will still be written in the most popular 5, but the next thing to break the top 5 will remix a bunch of great ideas from whatever that 1% is written in.

  • Harriet
    HarrietMar 8, 2020

    It's a waste of time to learn vim.

    here's my reasoning.

    Yes it's a bit annoying if you have to edit something on the fly on a server without a GUI - but fumbling around in vim for this small amount of time is still quicker than learning all the keybindings. and why are you vimming around on the server anyway? isn't that a red flag in the first place?

    I have probs spent well less than 1 day in total working in vim, in my dev career.

    whereas I spend 8 hours a day in an IDE which catches 80% of my mistakes for me and offers all sorts of other features to boot.

    • Ben Halpern
      Ben HalpernMar 8, 2020

      What is your IDE of choice?

      • Harriet
        HarrietMar 8, 2020

        Only used JetBrains products, so - JetBrains.

    • Jesse Phillips
      Jesse PhillipsMar 9, 2020

      That seems like a very popular opinion except among those that have learned vim.

      Now I'll switch to links to respond to your comments.

      still quicker than learning all the keybindings

      IDE which catches 80% of my mistakes for me and offers all sorts of other features to boot.

      visualstudiomagazine.com/articles/...

      onivim.io/

      I have not found learning vim a waste and still get IDE benefits.

      • Jean-Michel 🕵🏻‍♂️ Fayard
        Jean-Michel 🕵🏻‍♂️ FayardMar 9, 2020

        I have learned vim enough to write part of the translated manual in french.

        And I'm sorry but it would be delusional to think that vim gives IDE benefits similar to JetBrains IntelliJ IDEA :)

        I have not found learning vim a waste and still get IDE benefits.

        Right it's not a waste of time, it's fun

        • Luke Inglis
          Luke InglisMar 9, 2020

          And I'm sorry but it would be delusional to think that vim gives IDE benefits similar to JetBrains IntelliJ IDEA :)

          With the right plugins you can get most of the way there. I'll take 95% of the way there for free than 100% of the way for $150/year.

          • Jean-Michel 🕵🏻‍♂️ Fayard
            Jean-Michel 🕵🏻‍♂️ FayardMar 9, 2020

            vim+plugins doesn't do 95% of a modern ide

            and $150/year is like one or two hour of work for your employer, I'm pretty sure that he shouldn't care

            • Jesse Phillips
              Jesse PhillipsMar 9, 2020

              I think you missed that I wasn't specifically talking about vim, but emulators and new IDE which provide vim's mode based editing.

    • АнонимMar 9, 2020

      [deleted]

      • Luke Inglis
        Luke InglisMar 9, 2020

        VIM users seem to install a ton of plugins to make it similar to a regular editor, which always seems like extra steps for a similar experience.

        I only need to install 2/3 plugins to get a similar experience to my VSCode setup. If you remove themes from both I actually have almost the exact same number of plugins/extensions installed in both VSCode and Vim. The number of plugins you actually 'need' to add to get common behaviors between the two is small.

        VSCode is great and there is still stuff I can do there that doesn't have a parallel in Vim but for 90+% of my daily work I can get the same things done faster in Vim than I can in VSCode.

    • Jen Chan
      Jen ChanMar 9, 2020

      I was made to learn vim and all I needed to know was: I for insert, e for end, x for delete and :wq for "write quit"

      It's useful but I wouldn't trouble myself to remember more

    • Luke Inglis
      Luke InglisMar 9, 2020

      I have probs spent well less than 1 day in total working in vim, in my dev career.

      Honestly it only really takes a day or two to learn most of what you need to know to be productive in Vim. One of the great things about Vim is that it doesn't actually have that many important keybindings but the ones it has can be composited in many ways.

      Not that I'm trying to convert anyone but I think the 'learning cliff' meme is inaccurate and scares people off that might otherwise benefit from learning Vim.

      Of course I use it partly because it was easier for me to know VIm and be able to edit stuff up on a glorified mainframe when I was in school than to constantly be pushing code up and down.

    • Austin
      AustinMar 9, 2020

      Vim is one of those skills that's nice to have, but not necessary to be productive. The high upfront learning curve is not as high as you might think, and it does provide some tools to eliminate a lot of redundancy and inefficiency with typing, but it's usually not a force multiplier.

      IMO, it really comes down to one question: do you find significant value in decreasing the time it takes to transform your thoughts into text on the screen? If so, then you should learn/use Vim. If not, then it may not be worth it for you.

      I should add that I use the Vim key bindings for VS Code. So really I get the best of both worlds. I highly recommend that approach.

    • Yufan Lou
      Yufan LouMar 11, 2020

      Vim at its core is a language for describing editing actions. The language goes all the way back to the first editor of UNIX, ed. The history of the tools and the language goes like: ed -> em -> ex -> vi -> vim. You can save repetitive editing actions as macros or scripts, and use them as you will.

      A tailored IDE is usually the best for a particular language: .NET VB and C# work best in Visual Studio; Java and Kotlin in IntelliJ IDEA; Objective-C and Swift in Xcode. They are feature-rich, configurable, and user-friendly. People have invested in making them good tools for those languages. Similarly, many people have invested in making vim a good tool for C and shell script, which it grew up with, and other languages which do not have IDEs of their own. Vim provides a fall back semantic when the semantic analysis tool of the programming language is down or non-existent.

  • Shannon Crabill
    Shannon CrabillMar 9, 2020

    The tabs/spaces debate is stupid.

    (Althought I think in Phyton, whitespace matters so yeah, do tabs)

    • Hari Gopal
      Hari GopalMar 9, 2020

      Frankly, I think it's silly for a language to force programmers to even think about indentation, because of how it affects its interpretation.

      That's probably what I hated most about Python, back when I still used it.

      Just let us use braces / brackets / do-end / some kind of clear indicator, and let an auto-formatter figure out the rest!

      Thankfully, modern languages seem to come with a formatter built-in - refmt on ReasonML, for example.

      • rhymes
        rhymesMar 9, 2020

        Keep in mind that Python hails from 1991 (actually 1989 but the first public version is 1991). I think it stood well the test of times :D

        Though I can see why someone wouldn't like indentation to be syntax, but it's not that different from having gofmt indent all files the same way. It's also one less tool you have to worry about :)

      • Pete Dermott
        Pete DermottMar 9, 2020

        Mmmm... I just use Black with Python and it standardises everything.

        Personally I find some simple indentation rules preferable to the million different ways to position brackets and braces.

  • AndyRosenberg
    AndyRosenbergMar 9, 2020

    Microframeworks and/or libraries that cover the bare minimum of wrapping request-handling are better than massively abstracted, monolithic frameworks. You can build the same structure without the extra bloat.

  • Pacharapol Withayasakpunt
    Pacharapol WithayasakpuntMar 9, 2020

    I dislike Golang.

    • go mod vendor doesn't work properly.
    • Godoc doesn't support Markdown, but VSCode renders comments in Markdown, not plain text, anyway.

    I can never understand why Golang become popular, when Rust is so much better for developer experience...

    • rhymes
      rhymesMar 9, 2020

      It's also a much harder language to learn though. This matters in language adoption. If you read the story about why Go was designed like it is you will find details about Google trying to manage complexity and reduce bugs rate and improve complication time in massive C++ code bases with developers of all levels of skills

  • Hari Gopal
    Hari GopalMar 9, 2020

    Working with GraphQL, using a strongly typed language (ReasonML) was something of a revelatory (positive) experience for me.

    Mind expanding on why you think "you probably don't need GraphQL"?

  • Arthur Vincent Simon
    Arthur Vincent SimonMar 9, 2020

    In Gitflow, I think the develop branch is a waste of time.

    It's better to have discrete release branches and a single master branch.

    This way you can just deploy what branch you need to the dev/staging environment rather than having to merge to develop,

  • Ben Duncan
    Ben DuncanMar 9, 2020

    Most testing of UI components is a waste of time, especially snapshot testing.

    Frontend developers should run their code in a browser to see what they built. Any teams I've been on that used automated tests for UI components inevitably have developers who get overconfident in the tests and don't even check their code in a browser, breaking things.

    For a test to be valuable it should either be written before the target code, written before fixing a bug, or written for either a project or team so large that people might break things in different parts of the codebase. I haven't seen many exceptions.

  • rhymes
    rhymesMar 9, 2020

    JavaScript tooling is too complicated but I'm not even sure it's an "unpopular opinion" anymore, even tools developers are aware of that and are working every day to make it simpler (or to hide complexity away with easier abstractions)

  • Björn Grunde
    Björn GrundeMar 9, 2020

    Javascript is overrated and has an overly complex eco-system. It belongs in the browser.

  • Tails128
    Tails128Mar 9, 2020

    (actually planning to write an article on this, if I ever overcome my self-hate/shyness/etc)

    Meetings are not something you should avoid or which you should hate, stupid meetings are.

    A kick-off meeting is useful, a planning meeting is useful, a retrospective meeting is useful... they are literally there to explain to you how to do stuff, to help the company strategize and/or to help your company make a comfortable environment for you.

    Other meetings are to be avoided/hated (and I am looking at you 3-hours long meeting on "definitions")

    But the only image you give as a hater for all the meetings independently on what they are about is a very not-professional one.

  • Avalander
    AvalanderMar 9, 2020

    Javascript has become worse in the past couple of iterations.

    • Carlos Trapet
      Carlos TrapetMar 9, 2020

      I think I can guess why you're saying this, but mind elaborating?

  • Michael "lampe" Lazarski
    Michael "lampe" LazarskiMar 9, 2020
    • That we teach to much technical/frameworks/lib stuff and don't teach enough how to think about code and how to abstract things in a general way.

    • People hating on language X. Nobody is forcing you to use Language X.

    • Google, Facebook, Netflix, and all the big tech companies are highly overrated as an employer.

  • Tomasz Buszewski
    Tomasz BuszewskiMar 9, 2020

    It's better to write dirty, understandable code than highly abstract and incomprehensible one.

    Also, sometimes it's better to repeat some code rather than refactoring a days work just for the sake of "cleanness".

    • Ross Henderson
      Ross HendersonMar 9, 2020

      I repeat this regularly at work. We have a developer who (in PL/SQL) wrote a parameter as "parameter := null" instead of "parameter default null", and the reason was that "I'm not a typist".

    • Andreas Møller
      Andreas MøllerJul 19, 2020

      I would say it's almost always better to repeat code.

  • Ben Duncan
    Ben DuncanMar 9, 2020

    Is that assuming the strong-typed language compiles to Javascript? What about the cases where the target is a browser?

  • Omar Gaston Chalas
    Omar Gaston ChalasMar 9, 2020

    Classes are the worst thing has ever happened to Javascript

    • Austin
      AustinMar 9, 2020

      I tend to agree. It's nice to have "class" syntax if classes are what you actually want... But a lot of old-school devs saw that and said, "Oh, I guess we can do real OOP in JS now..." And JS is just fundamentally not object-oriented in the way that C# or Java are. It's silly to force that paradigm on a language that does so much more...

    • Andreas Møller
      Andreas MøllerJul 19, 2020

      That is a very popular opinion.

  • Austin
    AustinMar 9, 2020

    I'm going to throw in a suggestion for ReasonML on this one. TS and Flow are great for many reasons, but ReasonML is just 100% better in every way. Compiles to JS and native, and has solid web frameworks in the ecosystem. Can't really go wrong.

  • Austin
    AustinMar 9, 2020

    Absolutely! This has been true for me as a TypeScript developer.

  • Harriet
    HarrietMar 10, 2020

    Hahahaha agreed!

  • Miguel Sanchez
    Miguel SanchezMar 14, 2020

    It's NOT okay to be soft.

    I'm actually publishing a post about it tomorrow. Stay tuned.

  • Andreas Møller
    Andreas MøllerJul 19, 2020

    Code coverage is a terrible metric, and unit tests are usually a waste of time

  • Andreas Møller
    Andreas MøllerJul 19, 2020

    "Good" code is not elegant or clean, and it's never DRY.

  • Andreas Møller
    Andreas MøllerJul 19, 2020

    100%, unfortunately that language isn't ready yet.

Add comment