Aaron Gunderson

On a small team with lots of active projects it’s really easy to get spread thin and have too much work in progress. When you have a chance take a day and burn down the to do list. This clears a lot of mental space and is valuable for moving projects forward long term.

Wellfleet OysterFest!

Offseason Travel

This weekend we are headed to the Cape and it’s so much better than in season. I’m not a huge beach fan but when it’s out of tourist season it’s so much more relaxing.

Hiking, beach towns and more are drastically improved by less crowds if you are comfortable with slightly tweaked activities and prepping for more variable weather.

Exercising, stretching, eating well, putting in focused work can all be painful but in the end are good for you. It can be really hard to remember this. This is where good habits come in. It’s hard when you fall out of the habit. What else is painful but good for you?

Apple TV now has an official Spotify app. Was waiting so long for this!

When debugging a problem make sure you test your assumptions, especially when stuck. I just spent a while debugging something I “did” not working until I eventually realized I hadn’t done it at all.

Some tips for code reviews! www.agundy.com/2019/10/1…

Come work with me at Skylla Technologies www.linkedin.com/jobs/view…

Using RSS to Keep Up www.agundy.com/2019/10/1…

I got tired of reading lists of tech needed to become a developer and wrote up some thoughts on another way. www.agundy.com/2019/10/1…

Building a Personal Knowledge Base

I have been sold on developing a personal knowledge base for a long time. If you don’t know what a knowledge base is, the main idea an electronic storage place for all your projects, ideas, notes, etc that makes retrieval and association between topics simple. I first stumbled upon this back in college from the tool github.com/noqqe/cmd…

I used cmddocs for a while and even had a shared folder with Seve and Kiana but I eventually gave up on it. Without easy image and file integration it didn’t fit every need. Evernote has been the closest knowledge base tool I have used with years of notes from college through my time at BookBub. Evernote has a few weaknesses but the main one is it’s more of a note taking application then a knowledge base.

I am still struggling with the medium to do this well. The tool needs to encourage data ingress, have support for rich media files and types, encourage daily use, be easy to modifying, tag, have great search and more. I think there is a tool here that would find a solid niche. DEVONthink may be it but it’s Mac only so no bueno. This tool would hopefully be helpful in making decisions and systematizing my knowledge.

After finishing Ray Dalio’s Principles this week I have a lot to dissemble but one thing they talked about was expert systems for decision making. I am also curious if some personal expert system could fit into a knowledge base too.

Do you have a personal knowledge base, wiki or note taking strategy you think works well? I am interested in hearing about it. Especially if it works well on Ubuntu!

Rainy Saturday guest looking for belly rubs.

Building Maintainable Software

Maintenance is a super interesting topic and I’ve been following @The_Maintainers with great interest.

In software especially maintenance is a constant struggle and shifting base. Things that worked well yesterday often do not work today. I hit this just today with apt packages which was held back causing something to fail to install. Even though it worked previously.

How do we make sure the software that we write lasts? Something I’m not super sure we have a clear path forward in but I think is super important to think about. Minimizing dependencies can help but how far can you take that? How do we update existing systems to be easy to maintain and make sure new systems are being built for the long road ahead.

I’m working at a super small start right now with lots of new code to write and existing code to hone and improve. It’s a constant struggle figuring out some of the balancing points here. How do you make maintenance and upkeep tractable long term?

themaintainers.org/blog/2019…

Day 9/100: keep the streak!

Whoa I did not break the streak in the first week! Still going strong publishing something every day for 100 days. I didn’t run out of things to say yet either. I have a lot more to cover but tonight is late, since I went climbing after work.

The last few weeks have been busy with demos, integration and other project work and my fitness has been slipping. It felt good to get back on the rock wall though. Hopefully next week I’m back at it on a regular schedule.

How do you get back in the fitness habit? Or do you never have problems?

Removing Social Media to be Social

I am not sure the day I removed Facebook but I deleted it at one point about a year ago and have not regretted it. I am still active on Twitter, mostly professionally, and I download Instagram ocassionally to see what I missed but I have a lot less social media in my life. I found I felt further from my friends at first but long term I think it was healthier.

When catching up with family and friends the conversations are a lot more interesting and lively. It also means having more conversations. To figure out how people have been doing I have to have a conversation and not just like a photo once a month. Social media let me feel connected without having a relationship with the person on the other end.

Do I miss out on some opportunities and connections, absolutely, but I have strengthened the existing ones more. And I’m still a text, email and phone call away. Not far in these modern times.

How do you read your books? I read physical books for tech and science books. Audiobooks for nonfiction business, psychology, science and history. And eReader for fantasy, sci-fi and business.

Gitlab Review: Code + CI 👍 Issue Lists and Milestones 👎

Gitlab has been growing on me over the past 8 months. Work had previously been using Github but we were evaluating what continuous integration to start using, and Gitlab CI seemed to be just what we needed.

After evaluation I wanted us to switch but switching all your source control endpoints needs a reason. We then had a visiting engineer start and wanted to add them to a group of projects. Digging through Github it seemed like we would have had to create a group and then individually add that group to the repos we wanted access too. Gitlab’s subgroups made a lot more sense, so that day we did the switch and have not looked back. Gitlab is not as popular or stylish as Github and doesn’t provide the social network feel but it kicks butt for managing code and continuous integration.

Over the last few weeks I’ve been exploring Gitlab issues and I am hitting edges I do not like. Issues are great and have everything I need for now but the viewing and managing them is sub-par. We have a few groups for different isolated projects and a few projects that span groups, with this setup the lists and milestones get hard to track. Milestones only show up at one level, you can not see them from a subgroup milestone page even if the projects there are part of the milestones. Lists can be at any level but you can only add milestones from that level. No milestones from projects below yours can be displayed. This hinders making boards across projects.

Milestones are a little click heavy to work with. You click on a milestone and get a slick page with a nice chart and your total issue counts, deadlines etc but seeing the issues involves clicking a tiny link at the bottom of the milestone page. The milestone link on the issues list also drags takes you to a filtered list of issues with that milestone on the repo the issue belongs to, not back to the milestone page, yeah I’m confused too.

Now some of these problems with issue lists and milestones would hopefully be addressed by upgrading to the tier that includes Epics. The problem is we aren’t hooked yet, and Gitlab needs to hook us into their project management tools at the $20/user/month tier before we jump to the next tier at $100/user/month. That’s a lot of money for unproven value, especially if we can not build solid workflows and have bad experiences with lower tiers.

Over all I have really enjoyed using Gitlab. Container registries per repo, deploy tokens, Gitlab runners, the code review tools and branch management are all great, and I really, really want to buy in more to some of their features but the usability is sometimes lackluster especially in more advanced features. They definitely go for the checking all the enterprise feature boxes over sleekness and performance once you get past code and CI. What are your thoughts on Gitlab vs Github?

Wishing for a Mac

I have been back on Linux full time for almost a year now and there are a few things I miss.

I love, use and even contribute occasionally to open source software but it does not work well for a lot of tools.

I miss some of the excellent apps on MacOS:

  • 1Password
  • Evernote
  • Photos
  • Mail

There is also a some software I would like to be able to try for personal use:

  • DEVONthink
  • Schrivener

Reliable graphics and hardware

Screen tearing, displays disconnecting from my dock and draining battery when it should be sleeping are all issues that I really wish I did not have to deal with.

Window Management

Gnome window management does not make sense to me. Their is either multiple workspaces on one screen and a single workspace on the other. Or workspaces that span both displays but when you hit the meta the illusion breaks. Instead of seeing just the windows for the open workspaces, one display shows what you expect of only the programs open in that workspace on that display, but the other display shows every single window open on that monitor. This drastically reduces the nicety of having two displays.

Someday

Work requires that I have Linux given the tools we rely on, but I really miss some of the polish of the Mac ecosystem. For personal usage I will probably buy a Mac laptop when I can justify a reason to get a new personal computer. For now I have a Linux desktop and an old personal laptop at home.

RE: Avoid Working Alone

An addendum to: letterstoanewdeveloper.com/2019/06/2…

If you join a team who has you working alone, do not be afraid to push back. Some groups especially when small have large silos of isolated work that all need being tackled. Putting one person on each thing is a poor strategy for long term team health and velocity. Even as a new developer, you can contribute across the team. Some ideas to get started:

  • Ask your manager what they are working on.
  • Read through other systems documentation or even just launch it and click around
  • Volunteer to help review or contribute across projects.

This will be incredibly helpful for you and for your team. As a new developer you can offer new insights and reaching across teams helps others improve by encouraging less overly complex solutions. You will also begin to level up and pick up on where changes need to be made to improve confidence.

Today was a busy day at work, but it didn’t have to be. I fooled myself by doing work but not the important work. When planning your day make sure you do the important tasks first.

Travel, Consumption and Happiness

Consumption and happiness is a huge discussion that I can’t breakdown completely in a short post, but to summarize consumption does not generate genuine happiness.

Travel is often lauded as a way to find happiness and I want to dissuade you of this opinion. Travel is just another form of consumption. And traveling for the sake of traveling or to create happiness is not a viable strategy. This does not mean you can not get happiness from traveling. It just means it has to come from a second order effect of traveling, mainly challenging yourself or your comfort zone, learning new things and renewing or making personal connections.

Travel is also a form of consumption that is much easier to share and flaunt on social media. When seeing this consumption and getting jealous realize that you can generate similar rewards to them without the same consumption in many other ways, though they may not fit well in a square photo.

Now Update

A lot of people with personal websites like to keep a “now” page, listing what they are up to focused on. For day #2 of #100Days here’s an update that will go on www.agundy.com/now.

I’m living in Cambridge, MA, with Michelle. I’m working at Skylla Technologies as a software engineer. Outside of work I still enjoy reading, climbing and have been occasionally running.

Fitness

My fitness has been slacking with a lot at work the last few weeks but I’ve been gym climbing a fair amount and even got outside a few times over the last few months. I hope to get back into running soon and start training for a half marathon.

Reading

Reading wise I often keep a few books in the air at a time. I’m currently working my way through:

  • Principles by Ray Dalio
  • The Manager’s Path by Camille Fournier
  • Semiosis by Sue Burke

I recently finished:

  • Assassin’s Fate by Robin Hobb

Work

I’ve been at Skylla for over 10 months now and it’s been growing great. Work is super varied but my focus has been pulling together our systems and processes and team. As it’s a start up I wear a bunch of hats but my most frequent hats are devops guru, full stack web developer and project manager.

Day One: Intentions

Ever searching for the best note taking application on Ubuntu I stumbled upon Standard Notes today and then the #100Days writing challenge they suggest. I thought it was a great idea and something that would kickstart me back into writing, recording my thoughts and making them more public. So starting today I’m committing to doing it for the next 100 days. With 95 days left in 2019 this seems like the perfect time to start, wrap up my thoughts for the year and experiment with a new habit to consider keeping in 2020.

For the first day of the challenge the easiest and most useful first post is to document my intentions and maybe list some intended outcomes.

Public record: I intend to force myself into committing my thoughts to the “paper” aka the internet. I have a blog but with I often over analyze and try to make sure the posts are solid before posting. On Twitter the medium and most of my thoughts don’t fit well into 140 characters so here I can be flexible with that. I have a big backlog of ideas for topics to talk and this challenge should empty them.

Improve communication: Writing my thoughts out and getting feedback from you all will help improve my writing ability.

Improve thoughts: I hope to self-evaluate and improve my thinking process as well as stretch myself to hone some of my skills, document things I know and write down questions I want to know the answer to.

Want to follow along? This will be terrifying for me and poor entertainment for you. Maybe you can join the challenge with me.

Spent the day in Newport, Rhode Island with Michelle and my mom.

Not sure how they get away with this. Shame on Verizon Wireless