Staying Productive

Background I wrote a post a long while back about how I started to use Google Keep to get myself organized. Google Keep has been a go-to app for me on my phone for a long time now. I love using it to make lists of things, and I find it much more convenient than a paper notebook. Don't get me wrong--I think a paper notebook still has plenty of uses! I love my notebook for long running meetings with open-ended discussions or brain storming sessions. It's great to be able to take a pen/pencil and doodle down any idea that comes to mind. When I'm having a free-form conversation, I need a free-form way to take notes. However, my phone is something I almost always have with me--and my paper notebook isn't. My phone allows me to take my Google…

2 Comments

What Makes Good Code? – Patterns and Practices Series

What Makes Good Code? It's been a while since I've had a programming oriented post, and I figured this would be a great topic to write about. It's been a topic I've been thinking about more and more over the last year and I've been experimenting with certain patterns and practices to see if certain things actually make code "better". A lot of the information presented in this series will be completely based on my opinion, but I'll try to back up my opinion with as many concrete examples as I can. If you have a differing opinion, I'd love to hear it in the comments. I'd also like to call out that much of what I'll be discussing is in the context of object oriented programming. To be specific, there may be mostly C# examples used. If this isn't something…

1 Comment

Timur Kernel on 2013 Nexus 7 WiFi (flo)

Background on Timur's Kernel I got fed up with having a pretty crummy head unit in my 2012 Audi TT RS (named Ignantt), and decided that it was time to take matters into my own hands. Part of doing a Nexus 7 head unit install in a vehicle involves powering the tablet up with a USB on-the-go (OTG) cable and being able to not only power the device but also plug in USB devices into the tablet to use. In order to get this working, everyone seems to be relying on this kernel from Timur. As per Timur's site: This feature allows you to connect one or more USB slave devices to your tablet and charge it at the same time. This allows you, say, to operate an external USB DAC without the tablet ever running out of power. To…

18 Comments

Yeah, We’re an “Agile” Shop

Everybody Has Gone "Agile" If you're a software developer that's done interviews in the past few years, then you already know that every software development shop has gone agile. Gone are the days of waterfall software development! Developers have learned that waterfall software development is the root of all evil, and the only way to be successful is to be agile. You need to be able to adapt quickly and do standups. You need to put story point estimates on your user stories. You need retrospectives... And agility! And... more buzz words! Yes! Synergy! In the cloud! You need it! Okay, so why the sarcasm? Every single software development team is touting that they're following the principles of agile software development, but almost no team truly is. Is it a problem if they aren't actually following agile principles? Absolutely not,…

0 Comments

Article Roundup: Burn Out

Burn Out I had a lot of really positive feedback from my friends and family after writing about my experiences of going through burn out. If you haven't read the post, check it out here. I've done some article summaries on the topic of burn out before, but I feel like it's probably a good topic to bring up again in light of my recent post. For a bit of background, burn out is a process that can occur to an individual that's dedicating too much time to a particular activity. It leads to an imbalance in terms of what his or her time is put towards and can result in a person feeling depressed without any energy. Wikipedia does a pretty good job of summarizing it in one quick sentence: Burnout is a psychological term that refers to long-term…

0 Comments

Burn Out – An Alternate Perspective

Disclaimer I wanted to write this post to share my honest and personal experiences with burn out in the software and startup scene. I'm hoping that my experiences with getting to a stage of burn out can help someone identify if they're going through the same thing. Hopefully someone will be able to take preventative actions before things get too serious, like I've been able to do. I'd also like to point out that I absolutely love my job (you'll be reminded of that in my post) so my experience might be biased in some ways because of that. If I didn't love what I do, I'd be finding another job where I did. What is Burn Out? In my earlier days at the company I work for, I remember my HR manager talking to me about burning out. It's…

2 Comments

One on One Evolution

Background I'm a "middle manager" where I work, but that means a whole bunch of things. My everyday tasks primarily consist of programming, but I do a bunch of work to interface with other departments and teams, and I play a role in managing people on... well, the "people" side of things. For the latter part, I refer to that as people leadership. I think it's pretty easy to look at some of the aspects of people leadership and dismiss them as "fluffy" or needless... I consider myself a logical/technical thinker, so I have that frame of mind sometimes. However, I do see the value in actually being able to support my team so that they can operate at the best of their abilities. I try to find ways to do that without it seeming to them like I'm doing "fluffy leadership things",…

0 Comments

Should My Method Do This? Should My Class?

Whose Job Is It? I wanted to share my experience that I had working on a recent project. If you've been programming for a while, you've definitely heard of the single responsibility principle. If you're new to programming, maybe this is news. The principle states: That every class should have responsibility over a single part of the functionality provided by the software, and that responsibility should be entirely encapsulated by the class You could extend this concept to apply to not only classes, but methods as well. Should you have that one method that is entirely responsible for creating a database connection, connecting to a web service, downloading data, updating the database, uploading some data, and then doing some user interface rendering? What would you even call that?! The idea is really this: break down your code into separate pieces of functionality.…

0 Comments

End of content

No more pages to load