I got the idea for this article after solving this problem for the team I was working with, for a client.
It was almost a year ago that I started building a self-destructing tweets app, just like Snapchat’s snaps…
… and nobody used it.
The not-so-short intro In 2017 I set out to create a self-destructing tweets application. Nothing impressive but it helped me learn a lot of things.
First, I set out to design it all by myself — failed miserably. At that point I reluctantly decided that the best thing to do is to use a ready-made theme.
I recently had to create a CSV from some data returned by the Jira API. Went on the Internets to find a module on NPM that would do the job. Unfortunately, I wasn’t able to find a single module that would perform only that simple task.
We were already using a module to generate Excel exports, inside the application, but it was generating XLSX files. It also looked like it has a funky license, so I decided to drop it altogether.
You write code everyday. You’d be forgiven for assuming you write code for yourself. At the end of the day you’re the one who’s going to deliver that task. Why not implement it to your liking? It’s all about you, right?!
Well, not quite!
Because you won’t be the only one working on that project. Even if that is the case, you won’t be the same person, 3 months from now, when you will touch that feature again for an enhancement.
I receive a notification from Quora. Someone had asked me to answer this question. At first, I was tempted to give the “Learn the language basics and then go for libraries” sermon. But I stood and thought for a moment. Since the time I used to obsessively preach that, I went through a lot of teams, mindsets and technology stacks. I saw that neither the teams or the businesses needed people who were experts at language fundamentals.
Recently I took a lot of interest in Golang. I was listening to the GO TIME podcast — GoLand IDE and managing Gopher Slack and there was a lot of chatter about IDEs vs. editors. What sparked my interest was the discussion around working with Git from the command line vs. using the IDEs built-in tools. This is what motivated me to write about the workflow I have with Git.
jQuery is not dead! I’d love to say it is, but it is alive and kicking. Unfortunately, its existence hit the team I’m currently working with, and it hit pretty hard.
We had this admin panel built on an older version of the Metronic theme, and the bootstrap-datetimepicker the theme used was giving us headaches. It would randomly reset to 12/31/1899 when losing focus. We were using UTC time and so our dates had this format DD/MM/YYYY HH:ii UTC.
While working as a software developer I’ve been more or less accused of: “focusing too much on quality”, “polishing too much”, “overanalysing”, “not letting work go”, or “lacking in commitment”. As you can tell, by reading the previous sentence, the level of crap in the statements tends to rise towards the end, culminating with crap project managers utter after 4 failed sprints — hail SCRUM! I ended up calling myself a software over-engineer, to set expectations from the start.
I was talking to a developer, over lunch, about some of the struggles the team I’m currently with is facing. I was telling him about the long hours we had to spend to deliver some work to the client, our code quality issues and the overall experience level of the team.
His answer: Well, that’s because you don’t do sprints and you don’t do SCRUM.
Let’s set this straight. Imagine your non-delivering, junior-riddled, no-BA, requirements-lacking, yes-sir-managed team is a fat person.
Last week while working on a client project, I hit some serious dead end. A memory leak! It’s been a while since I saw one of those.
After 10 minutes of chewing on the code, Webpack decided to throw up and leave me with nothing more than this V8 heap dump. See the dump in this GitHub gist.
It hit me like a hammer in the head. What the hell was I doing wrong?