255 karma · joined April 16, 2014
Well, the same thing can be said about pretty much anything. I've seen good and bad Django setups, so what?. The point is configuration as code works well if you know what you are doing. A config minimal language (toml, yaml, etc) may also work well as long as you don't need something that's not supported by it, and as long as you don't need to debug it.
That sounds like the opposite of what the article describes. The point of having configuration as code is having all code related to config in a single file. There is no config generation, nor config loading.
How does utilities make complex/nested responsive grid simple, again? I'm arguing semantic css is simpler than using utilities all over the HTML, not that it magically makes responsive design easy.
> your grid has zero media queries in it, which means whatever grid classes you were using before were not responsive - which is where 90% of the complexity lives.
There are some in the examples [0][1]. Both for responsive design and nested grid, sadly not for both at the same time. It's not much more complex, though, well I guess it depends on how complex are we talking about. Anyway, CSS Grid makes semantic layout a lot simpler now.
[0] https://github.com/nitely/semantic-flex-grid/blob/gh-pages/s...
https://www.theladders.com/career-advice/how-i-perfected-tra... https://doist.com/blog/travel-remote-work-digital-nomad/ https://www.refinery29.com/en-us/remote-work-digital-nomad https://www.thebalancecareers.com/working-remotely-while-tra...
etc
Here's a US tax attorney talking about it:
I think the main problem here is a lot of companies do this weird hybrid where Scrum processes are somewhat followed, but managers keep managing the team and sometimes even taking the role of product owner and/or scrum master as well, and that just doesn't work.
That's not parallelism, that's concurrency. You are basically doing round-robin. If they were done in parallel, then both tasks would get completed at time 100. Throughput usually improves the otherwise maximum latency when there is at least some parallelism, otherwise I agree improving throughput would not make a lot of sense in many cases.
> I think that what I am doing is some variant of Domain-Driven Design?
Sounds like iterative and incremental software development. I dare say Agile.
> There is a risk though that after ten years you could be a great programmer with a great portfolio, but with a failing body and unhappy social life.
There's no reason this should be the case, and life is full of risks.
I'd say it's nothing like work. There's no stress, no deadlines, no fixed hours, no team work, etc. For many people programming is a hobby, something that's fun and they are not paid to do, they don't do it for the money, but for self-fulfillment. Not everyone find that at work, and even if they do, they may choose to spend a few hours a week building something for themselves, to scratch an itch or whatever.
> It's not so much that we can't accept that some people enjoy working, it's that they're screwing their health. There is no free lunch, staring at monitors for years on end will take its toll.
I doubt 50hs of screen time is a lot worse than 40hs, but I'd need data to prove/disprove it. However, you don't even need to spend that much time, it could be just a few hours a week.
That could work if everyone gets at work at the same time (+/-30m) or if everyone takes lunch at the same time (+/-30m), which has not been the case in most of the companies I've worked for. It'd be better at the end of the day, assuming no one does extra hours, but then it's even less useful or at least it becomes obvious it's all about status-updates.
> micro-management is if i tell you every single step that you should do, but a daily status-update is not
It's a micro-management enabler. There's no way to know if it's used to pressure someone to deliver, or to do things a certain way, without working in that team.
The bottom line is that stand-ups are of very questionable use. There are just better, more effective ways to communicate what everyone is working on, what things are done, and when someone is blocked. i.e: ticket assignments, PRs, sporadic side meetings, asynchronous communication (Slack, emails, etc), etc.
Also, anything that feels like micro-management will be considered micro-management. A daily meeting to give a status report looks a lot like that.
I usually know what everyone is working on (because of ticket assignments, code reviews, some occasional side meeting, etc), as I usually work with teams of 5 (or less) people.
> There simply is no concurrency in JS though,
There is no parallelism in JS (well there is with workers now), concurrency is not parallelism.
> Long story short: Your problem is with ordering, not locking.
Look up the definition of a concurrency lock.