Devsplained? What? Although it’s a made-up word I came up with, it represents what this project hopes to accomplish. The goal of this project is to help mentor you and others on what the real world of software development consists of. All explained through both positive and negative experiences I’ve had along my own journey. This project will consist of two major elements working in harmony and discord. The core element will be the episodes published on YouTube. This blog will act as the second element. Working together, an episode will explain the subject matter I hope to present and explain, and the blog will back up the episodes with additional thoughts and greater expansion on the subject of the episode. At the end of this series (if there even is one), my hope is that you will understand the core aspects of what professional, “real world” development looks like. But first, let me introduce who I am.
How do you introduce yourself to the development community at large? It’s kind of a strange concept, but it is one that we should all be familiar with. Remember your first day of school? Well, I know I don’t, but from that day on, memories start to solidify and how you introduce yourself begins the long and awkward (at times) journey towards comfort…hopefully. Of course, not everyone’s journey is the same. Some never feel comfortable in introductions, some just have a personality suited for introductions and some just kind of let fate do all the work. Unfortunately, this post is not about how to introduce yourself. That will come later oh summer child. There is much more to come! There will be an episode on how to introduce yourself in a career in software development. Remember, this is a journey that you and I are taking together.
Hello world! My name is Tyler Wright. Welcome to Devsplained! I’ve been professionally developing software for over 18 years. Unprofessionally, it’s been a lot closer to 20+ years, all starting with my trusty TI-89 Graphing Calculator. I have a bachelor’s degree in Computer Science with a minor in Systems and a focus on graphical development. Upon graduation from college, I started my career as a humble consultant and now I am a Software Architect. I’m agnostic when it comes to major aspects of development, but I am also opinionated about things at times, which is both a blessing and a curse in ways. In this series I will be providing concepts and opinions as fair as I can, but there will be times I’ll stand on a soap box (it’s so funny that we still use that term…or am I just old (I’m 36)). Ha! Check out that nested aside or whatever you call parentheses in writing. Also, I am not a great writer by any means, so understand that my sentence structure, spelling, and overall grammar will not be the best…just want to be transparent. Also, my humor at times might only work on me, so if I say something stupid that I think is funny, know that my humor is…special?
Enough about me, if you care to know more, just see the about section. Let’s move into what Devsplained is all about. The TL;DR (which is either supposed to be at the top or bottom, I forget…a 5 second google search says it depends…whatev’s) is that Devsplained is a free mentorship focusing on transitioning into a career in Software Development. The series will keep each episode as narrow as possible in scope. I don’t want to dump everything I know and all of the minute details into each episode. Those details will most likely end up here instead.
Each episode will be about one thing, in a single category. An example episode would be the Resume episode. That episode gives an overview of a Software Developer resume, my opinions on what makes a good resume, and what doesn’t, based on my experience on both sides of the table. The Resume episode fits into the Soft Skills category. Here is a list of the categories that episodes will be categorized into:
- Dev Life – What your life as a developer can and should be
- Quality – Writing better code
- Soft Skills – Non-technical skills such as communicating, meetings, salary negotiations, etc.
- Hard Skills – Technical concepts like: Databases, IDE’s Languages, etc.
- Development Lifecycle – How software moves from idea to production and beyond
- System Design – All about designing systems large and small
The episodes will vary in length, but the goal will always be 10 minutes per episode. That is not a hard and fast rule, it is just an amount of time that I feel will work to ensure a balance between too many details and too few. Some episodes might be 8 minutes, some might be 16. I will do my best to stick as close to the 10 minutes goal as possible, but there will be exceptions of course.
Every episode will contain a backing blog with extra concepts, explanations, and additional details and resources. Links to the backing blog post will be found in the description section on the YouTube episode and will link here. Of course, you could also just stay here on the Devsplained website and see the video along with the post, but it’s your choice…choose wisely! There will also be additional posts that might loosely tie into an episode or some posts could just be a random rant or tutorial. Who knows exactly how this thing will grow? I do have a 2-year plan for the series, but directions could and probably will shift based on feedback. This project is as much mine as it is yours. Participation here and on the episodes is extremely encouraged! Positive and negative comments can only refine our journey together.
Episodes will all follow a very similar formula:
- Pre-Intro – Something fun and random?
- Intro
- Overview
- Chapters/Sections
- Conclusion/Review
- Wrap up
- Outro
To make things simple I work from a simple template I created for the episodes to standardize them. This is mostly to provide comfort for you and what to expect, but it is also because I’m lazy and I don’t want to have to deal with the basic foundations and design each time I create a new episode. A quick note about why I’m lazy: All developers should be at least a little lazy. If you find yourself doing repetitive tasks, automate them. If you don’t know something or need help solving a problem, ask for help. There are a lot of developers in the world and there are many out there that enjoy helping others learn (I hope I’m an example of that). Also, the internet is full of good ideas and bad, but look to it for help. Be lazy but be smart about it. Always consider efficiency. Lazy programmers are usually more efficient and can produce better results quickly.
The project will follow a rough schedule. I’ve already completed 8 episodes and currently have 62 episodes planned, outlined, and ready to be constructed, filmed, blogged, and posted. I am doing all of this by myself, so there will be times where I might not be able to release a new episode for a while (see the Life Balance episode for details). For the next 8 weeks, I will add a new episode and backing blog every week, probably on Sunday evening. After that, the release schedule might deviate a bit due to life stuffs. I do work full-time, I do a lot of side-projects (professionally and for fun), and I am also raising a family, so bear with me at times. I will try my best though, I promise that. At some point I will publish my schedule with some publish dates inked in, some penciled in, and some that contain no release date. But hey, at least you’ll be able to see what is on the horizon! Hooray!
I want to end this first post with a few things. First off, I hope you’ll join me on this journey. I’m not doing this for profit at all. You might see some ads to support infrastructure costs to support my studio and filming components (although I already have most of what I need), my hosting and domain costs. All of my content will be available for free. All programming examples (amongst others) will be either published here, YouTube, Github, and some online fiddle tools, all under the MIT License.
Feedback is key to refining this project. Think about parts of the project like an open source project that has a gate. Submit your ideas on here, YouTube, Github, anywhere. I will be listening, and I will work with everyone to drive this in the right direction. With the core goal being education and mentorship and it being free for all. You can find all kinds of ways to communicate with me through my social network links, email, and comments here or wherever. I do have one rule though, please don’t call me…I get enough of those daily that I would love to toss my phone in the ocean…but I can’t because it’s the future now.
If you’ve made it this far, awesome! If you skipped right to this part, great! Take this resource and use it however you like. If you decide to join me, you can always subscribe to my various things, and you can always help guide the direction of the project.
Take my hand and let me show you what I know, what I don’t, what I think I know but don’t, and the lessons I’ve learned along the way, both good and bad. Let me devsplain (new word!) Software Development to you. And finally, let me help you understand what it means to be a professional developer, at least how I see it.
Adios!