My significant other doesn’t work in IT, but we often discuss our days. Today I explained the difference between refactoring an application and rewriting one. Refactoring means the app works, but it’s not great. There are issues, probably technical debt, and refactoring…
Will improve the app, make it easier to maintain and extend its life. It’s still the original app, looks the same to users, but it’s probably faster and more stable.
Rewriting the app means completely replacing it. Writing a brand new app, from scratch, with more modern tech…
You may rewrite an application because it’s built using an extremely old framework or depends unacceptable old infrastructure. You can’t update it, it’s just too far gone.
Does anyone have any questions? I feel like teaching mini lessons. ☀️
• • •
Missing some Tweet in this thread? You can try to
force a refresh
#minilesson The difference between applications and infrastructure;
Infrastructure is the operating system that applications live on. Think windows, linux, containers, and so much more. Sometimes hardware is included in this category (depending on who you talk to).
Infrastructure is necessary to run an application. Operating systems are also all standardized, not unique in nature. If we’re both running SQL server 2012 R2, we both have the same options for patches, configuration, etc. Operating systems are software that speak to hardware.
Applications are software that speak to operating systems, databases, APIs and anything else you can think of. There are custom applications (what I’m almost always talking about, software developed for a specific business need or as a product to sell), COTS…
When Google bought fitbit all they bought was the data. Not the dumb bracelet. Mark my words.
They never responded to me about sending me an email AFTER the merger, when I had explicitly requested all of my data be removed BEFORE the merger. The "investigation" went nowhere.
Who here gets the "GPS nag screen"? If you have GPS tracking disabled it asks every time you use it. Also, if you reinstall or update it... It turns it back on!
I liked my dumb bracelet. :-\
As a refresher: Fitbit could track your menstruation, if you're trying to get pregnant, if you've had an abortion, when you've had sex, your physical location and much, much more.
Story: Years ago I was in a dev meeting and found out one of your devs had been editing code live on the server for years, and that the code in our repo was completely out of date. There was no backup of this prod app. I lost my shit.
The dev told me that
1/?
The dev told me "It's faster to do it this way. I did nothing wrong."
I explained that having no backup meant we could lose the entire app. He said he took backups of the server, so that wouldn't happen. He asked why he had to "waste time" using a repo.
2/?
I responded "BECAUSE IT'S INDUSTRY BEST PRACTICE!!!!!" (yes, I raised my voice)
My manager told us all to shut up and then told me I had to prove why we needed to use source control. I felt like I was in the twilight zone!
I used to work for the federal government in Canada, and so did my mom, but different departments. One single time, I got to work with her, and do an interdepartmental project. I WAS SO EXCITED.
1/?
I worked at the Department of Justice (DOJ), and we wanted to take part of the tax refund from parents who owed a significant amount of child support, and then send it to the owed parent. My mom worked at the Canada Revenue Agency (CRA).
2/?
She was the project manager at CRA in charge of sending us just enough info for us to get the job done.
I, of course, was the nerd designing and coding it all from the DOJ end.
I cannot tell you how exciting it was to go to a meeting and my MOM was there!