The alternative is a custom DSL for templating which I find much worse. Even CSS has a DSL for conditional and programmatic logic which I only use because of the immense performance benefits it brings.
HN user
friedman23
There is no purely fun way to build a production app. If there were everyone would do it. The hard part of building an app is the slog through the tedious parts. If you just want to build a toy app for fun, I recommend you just mess around with processing or pygame.
The vast majority of the managers I've worked with wouldn't be particularly good ICs, not so sure of the wisdom of this move.
The point is that the company doesn't need the managers.
Fair point! I've tried to learn and failed c++ 4 times (I knew C, python, typescript, java), I learned rust in a month after reading a 700 page book.
Right and wrong isn’t defined by how copyright law is written right now
It's a good thing I never mentioned right or wrong.
It's their engineering blog... This is what engineering blogs talk about and you are on hacker news where things like this are of interest.
It's completely different. The customizable fonts did not violate copyright.
What do Solid, Svelte and Vue bring to the table exactly? None of those frameworks solve the dataflow problem and the performance benefits they bring do not make a dent. Also why would I want to use some DSL for html templating when I could use an actual programming language?
but I don't think it's about Javascript
I get that and that's part of the point of my comment. That these screeds always make sure to mention javascript because by bundling javascript in the screed you get default acceptance from the JS haters.
But the fundamental essence of the article is about complaining about SPAs. Which betrays a striking ignorance of what most frontend web software engineers are working on. They are not working on websites for businesses that only need a single form and an email to get the form responses. That usecase is solved and does not require a software engineer. It can be built on wordpress or squarespace.
SPAs are the answer to the question of how do we build an app that is delivered in real time over an internet connection.
The reason these apps are built with JS is because until relatively recently it was the only option. Why is it still used while there are other options? Because WASM is not mature and JS is still faster and there is no killer reason to switch off it.
People that complain about SPAs are the modern knights tilting at windmills. What are the primary ways people today consume content? Youtube, tiktok, whatsapp, facebook messenger, instagram, discord, etc, etc.
Before someone qualifies my post with "ackshually I do this thing", yes I read blogs too.
That being said, NOBODY READS BLOGS. People don't want static html and css. They want real time updates, they want notifications, they want gamification. They want to play the slot machine.
So while you want to shit on javascript (it's fun to bundle in the shit language javascript when going on these tirades because everyone fucking hates javascript). The problem is not javascript. The problem is, we want real fucking apps, with interactivity, and we want them instantly, over an internet connection.
I want to play chess in my browser over an internet connection. And when chess 2.0. comes out I better have that shit in my browser in under 100ms.
Oh, and sure JS is shit. But if we were using Rust for our UIs we'd have the same problem. The most prominent Rust web UI frameworks are literal React and SolidJs clones.
And JS will be replaced, but we don't have a good enough garbage collected language for it yet.
edit: Can you even think of a modern business that could be just served by just html and css. Like what? A restaurant? Is that what we really think the average software engineer is working on? Restaurant websites?
My parents came with literally nothing because the government they escaped took everything from them. Both of my grandfathers had their education but they could not practice their craft because their accreditation did not matter in the US, my father could not speak english, neither could my mother. My mother knew so little english that she couldn't even ask to go to the bathroom in her first week of school so she peed her pants.
We literally have bots now that can play poker better than any human.
This is not true but will be at some point.
And unlike life, in poker there's no risk in making bad decisions during the game while you're still learning
You haven't met most poker players, they almost all start playing with real money before they even have a clue. What make s poker a truly terrifying game is that you can win a lot while making all the wrong decisions and get hooked for life while being a terrible player.
Worst case scenario you just start a new game until you get the hang of it. Life is not like that. There's no practice run, and when you make what turns out to be the wrong decision it can follow you around for the rest of your life.
Yes, there are many unfortunate people that have made life altering decisions while young and the decisions follow them forever. Thankfully not all failures in life hold such dire consequences, in fact some failures seem like the end of the world but in reality the consequences are not as big as you expect (eg getting fired from your first job or failing an exam).
Not accounting for luck as a factor of success is one of my pet peeves.
Why do you model life as a single bet where you have a 1 or 2% chance of winning? In reality you are making bets every day, each with a range of odds of succeeding and each success can produce a range of outcomes.
Look at poker, a game that has a massive "luck" component, people still consistently win.
No, if it was actually like monopoly there is 0 chance of succeeding once people have established themselves.
You have a finite number of bets you can make in your life, if you waste them by partying, gambling and being high on drugs then yeah, I can see how it can feel like it's impossible to succeed.
And life is a lot easier than these board games, there isn't one winner in life.
Ah yeah, you should have told that to my immigrant parents who came here with nothing.
It also disregards the type of lottery game that is a part of wealth accumulation.
It's not a lottery game, it's a poker game (and in reality, it's much easier than poker because the economy is positive sum and poker is zero sum). If you only consider "wealthy" to be people who have made billions or hundreds of millions then it's a lottery. But someone that consistently makes decisions that maximize expected monetary gain can consistently become a "rich" person if our definition of rich is have more than $10million.
(Poker is negative sum if you are playing in a raked game)
I can see some apps needing to be native (ex: using AR/ML libraries where you need to squeeze everything out of the phone)
I agree but all that's needed there is an escape hatch with some way for the non-native interface to interact with the native code.
One single platform for cross platform development is enough motivation and react native has improved a lot in the past year.
The entire concept of developing the same app multiple times for different platforms is just so mind numbingly dumb. 3x the engineering team, 3 different platforms with all their different idiosyncrasies. The impossibility of maintaining feature parity across all three platforms. 3x the testing and debugging.
It's going to take white collar jobs. The cost of batteries, motors, and steel makes replacing humans with robots not cost effective.
Can you prove the results are cherry picked? Android app quality being worse than iOS is my personal experience as well. There are many reasons for this too. Show us well known consumer Android apps where the iOS and Android app experiences are on par.
People don't invest a lot in android apps because android users don't pay money for things at the same rate that iOS users do.
Your statement is a non-sequitur.
It's their project so why not...
I donate my time to help the homeless. I know what people that don't use soap smell like.
Wow, you managed to convince yourself that something you were doing right was wrong
making a dent in the profitability of a multi-bn $ org should enable a very comfortable life
Life does not work like this, the world isn't about "should" it's about "is" and "can".
So if you create something that makes the company 10% more money, at best you can expect a promotion and a small one time bonus that is a fraction of a percent of that 10% recurring revenue growth you just generated for the company you work for.
That is the best scenario. The alternate scenario is verbal recognition with 0 reward and if you work in a truly dysfunctional organization you can expect outright retaliation at some small frequency.
If you build something great in your free time and decide to give it to the company you work for you are a fool...
I've been a software engineer at a few highly regarded companies for a decade now, at none of them did I have the ability to make large product or design decisions as a software engineer. I was able to suggest things, I was able to call out issues in the design and I was able to propose ideas but I was never able to unilaterally make any decisions and a lot of the time any ideas I had were put on the backlog because the company was in focus mode on one specific goal (and I'm not criticizing this idea of having focus).
So my point is, if leadership and product are bad and ask engineers to produce turds. The engineers don't really have control over the fact that they are producing turds but they have control over the quality, how buggy, and the shinyness of the turds.
Most developers don't have agency to choose what they work on within a company. Expecting the developer to have any influence on the outcome of what they produce other than the implementation quality shows a lack of understanding in how actual software development works.
And to be fair to you, almost all management two steps removed from actual coding does not understand how actual software development works. If you are interviewing a PM you should care about the outcome, for engineers focus on quality, timeliness and skill.
I'm a current ORM user, specifically Prisma. And it's nice that it gives me type checking but the CRUD actions and the programmatic interface are not the real reason I use it. I use it as a tool for declarative schema management, handling schema version control and migrations. If someone has a better solution to this that does not involve xml, I'm all ears. I'd personally much rather use https://pgtyped.vercel.app/ than prisma.
edit: Ok, I actually read the article... He briefly mentions the migration tool. Author: please go into more detail about how you do schema migrations.