#002: Splash Of Spaghetti Code and Task Of Unravelling It
This week, I’m lucky enough to publish on Secure Coding again and conceptualize the idea of spaghetti code into words. It’s a state of code that we all eventually encounter in some form. Personally, my career as a developer started with tackling spaghetti code written by a WYSIWYG Java code generator. I know it sounds crazy but it also taught me a lot about how to tackle the mammoth that was the entire system.
Machine-generated spaghetti code is one thing, but man-made spaghetti code isn’t any better. I’ve done my fair share of refactoring, rearchitecting, and recreating systems and apps. The article is based on the common things I noticed with all the spaghetti code I’ve encountered so far and how to fix them.
Here’s the link to the article: Spaghetti Code: A Recipe For Vulnerable Code & How To Fix It
Good Old Throwback Pieces You May Have Missed
The recipe for agile is not throwing every technique available into a bowl, mixing it up, and expecting everything will turn out alright. For me, “agile” projects have not infrequently spawned wasted time traps, confused teams, unfinished products, and a boss hammering us for results.
The Internet has become the new land of dreams where anything can happen. Many of us flock to make a living online as tales of people making bank emerge in the suggested and recommendations list from the rubble of survivor bias.
This is a definitive guide to starting a remote year as a developer.
Other Side Pieces
This week’s suggested pieces are focused on self-improvement. Every now and then I go through phases of writing about my experiences and the lessons learned from my quest to grow into a better version of myself. Here are some throwback pieces that you might enjoy.
The thing with habits is that we tend to make dramatic changes too quickly that it shocks our system into entrenching it even more. Losing a habit is like trying to lose weight — if you go cold turkey without actually understanding what it is you’re doing, it can backfire. And it can backfire really bad. Here’s how to change it.
Over the past 12 months, people often see my Depth Year as overly productive. So far, I’ve written over 280 stories, more than 200k words officially published as digital ink, created 2 apps for clients, and embarked on a quest to be more mentally present in my daughter’s day to day activities.
So how did I do it all?
It started with the idea of micro-ambitions.
There are two types of people in the world — those who view life with a growth mindset and those that see everything as fixed. However, not everyone sits cleanly in a single camp.
We may fall into a fixed mindset due to the setback. We see ourselves as a failure because we’re unable to make any traction in our learning. We start to make the correlation that maybe we’re just not meant to learn new things — that we’ve reached a point in our life where we’re incapable of learning anything new.
So how do you conquer the climb? How do you flatten the mountain and make the task of learning much more achievable? How, exactly, do you eat the figurative elephant and accelerate the process of learning?
Cool Code Finds
This week’s cool code finds is centered around design. While design doesn’t sound like it’s something to do with code, our software development process is linked to it. This is especially true for the frontend. I’m a fullstack developer by choice, which means the more random knowledge I have across all the different spaces means the better I am at making effective products. Here are the top 3 reads I discovered this week that you may find interesting.
This convenience has its price: Performance. Many have already pointed out the cost of multiple requests. If you want the remaining speed boost, then you’re best off downloading your used Google Fonts and self-host them.
Do you remember the first time you went on Apple’s website to check out their new iPhone? You were probably really quickly convinced by the clean typography, smooth animation flows, and high definition product images that immersed you by filling your screen… that you wanted one.
Apple’s web design doesn’t just function, it wows.
There is a wide range of websites that can be brutal. But what is good brutal? What is brutal just because it has the audacity?
This lack of definition makes it difficult for people to be more receptive to the concept itself. Brutalism originally started as a reaction against web minimalism, and the websites that rose from this movement were ugly and irreverent to make a statement. That statement’s been made loud and clear. It is now time to define the style considering the potential that a good brutalist website has. This article is an attempt at getting closer to a definition.
It’s been a crazy year and we’ve only got a few weeks left of it. So let’s make it a good one and start prepping for the year to come.
Upwards, onwards, and see you in the next edition.