Recent reads

Lately I’ve been spending a lot more time reading. There’s a ton of ideas out there, along with a bunch of garbage. (Translation: Don’t read the news kids)

Here’s some things I’ve read and found interesting. These are things that have been catching my interest lately, including the IndieWeb movement, thinking, tools, and just being awesome.

IRC

IRC (Internet Relay Chat) is a really old technology. Think of slack, but without emoji and gifs.

But in that simplicity lies some great power. I recently ranted about my new fav tool Glowing Bear, and I keep finding that the tools and ethos around IRC jive really well with what I want out of networked computing.

Here’s some things I’ve read along those lines:

  • Why I Live in IRC – This is kind of the direction I’m moving now… I’ve got several slacks integrated into my IRC program. Home Automation projects chatting over IRC is next!
  • What Really IRCs Me: Mastodon – An example of getting disparate services into one place with IRC

Also, as a side note (and related to the section below), Mastodon is really interesting. I’m expecting that it will continue to gain popularity as sites like Twitter continue to struggle with their… issues.

IndieWeb related

For years I’ve wondered about giving our thoughts to other’s platform. If I think of something and type it up, I put it here on my blog. If I put it on medium.com or Facebook, then they could take it down at any time.

I like the idea of owning my words, and the IndieWeb movement really appeals to me. I am working towards implementing more of the tools they are putting out.

  • Together – This is a new tool that looks like a great way to tie together several sites into one unified view. I’m becoming more aware of the time I spend on-line, and this looks like a great way to get it consolidated into one spot.
  • An IndieWeb reader: My new home on the internet – An older post that talks about the predecessors of the first link
  • Into the Personal-Website-Verse – A great read about how the internet should be (vs how it is)
  • IndieWeb – The clearinghouse for more information on this movement

Just awesome ideas

Here’s just some links of things I’ve run across that just have me star struck.

  • NEW APPROACH COULD SINK FLOATING POINT COMPUTATION – A new way to handle numbers in a computer? Very interesting challenger to the established IEEE standards we all are relying on today.
  • Reilly’s Hardcore Year – Great story unfolding of a guy who is just going for it and building a business in public
  • Scott H. Young – Scott is just an all around interesting guy. Check out that link to see all the things he is up to (ultralearning, memory, just being the best you that you can be)
  • Notion – This newish tool is a great competitor to Evernote… It combines a lot of great ideas into one spot in a pretty well put together package. Plus it let me use Markdown to edit things!

Wrapping up

One more quick link: I’ve been working on reading more lately and after seeing a cool site by Harper I was inspired to make my own page to show off what I’ve been tracking on Good Reads. Here’s my Reading List.

What cool things should I be reading? Leave a comment or hit me up on twitter!

Have a plan when traveling

This is as much a note to myself as anything. Hopefully someone else will see this and get some value from it.

In theory, I love plans. In practice, I don’t do them nearly enough.

Recently this was illustrated to me while on a business trip. Normally I’m very “go-with-the-flow”, but recently I’ve discovered that when I compared my past trips to people who took the same trip my experience was quite different from theirs.

A quick analysis revealed that my relaxed approach to my trip resulted in a lot of “lost” time and opportunities. I wasn’t being intentional with my efforts so as a result I had a very so-so time. Or worse, didn’t see anything exciting and new.

So now when I have a trip I’ve learned to make a rough itinerary of when/where I need to be, and then look to see if there’s anything interesting I could do in the time between events.

Example Scenario: You are going to fly to a new town for 3 days of training. The training takes place 4 blocks from your hotel, and from 9am to 4:30pm. This leaves a lot of time in the afternoon/evening that could be wasted if it is not planned. Also on the last day your flight leaves really late in the day. So what should you do?

Here’s how I’ve started approaching this:

  • What restaurants are near the 2 locations? What 3 looks the most interesting for dinner? (Go ahead and pencil those into your schedule)
  • Are there any interesting attractions within a few blocks of either location? Try to find 3 things that would be cool to see.
  • Are there any landmarks (baseball stadium, museum, bookstore) that would be awesome to visit? Write those down

At this point you have a bunch of options!

Making a decision

So, now with your list of things to do if you ever reach a point where you don’t know what to do (or eat), just look at the list! You can decide to do something other than what is on the list, but at least now you will have a starting point.

For me this solves the greatest problem: coming up with something on short notice. It is much easier to choose from a menu of options than it is to conjure up something new on the spot.

Having too many choices can be paralyzing. Even a little bit of list can act a guide post to get you to something quickly.

And remember: Just because it isn’t on the list doesn’t mean you can’t do it. The list is just there to keep you from sitting around doing nothing.

Because doing nothing is the worst. Action. Always take action.

Agile mindset: Making agile more than just a development methodology

agile mindset

Mindset is everything

To software developers, the word “agile” usually conjures up thoughts of project tracking, story points, and team velocity. To truly be the most effective developer that you can be, the word agile should also remind you that change is constant and that you must adapt. An agile mindset is the greatest tool a software developer can possess.

Too many software developers fall into the routine of their process. We work our stories, finish our sprints, and move on to the next iteration. While this does allow software to be produced in a predictable manner, it also can shackle developers. When facing a new challenge that challenges their existing mindset, these shackles can hold a developer back. Continue reading

Debugging like Elon Musk

Every time I think I’m doing pretty good with my projects, I take look over and see what Elon Musk is doing. Then I instantly feel like I’m wasting my life. That guy does such huge things and he does them so quickly it is mind boggling. What is his secret? Can I be like that?

The answers is yes, if you use “First Principles” reasoning. I have found that when you apply first principles to debugging software that you will get to better solutions. So what is first principles? Here’s Elon explaining the how and what of it:

So here’s the take away:

Continue reading

Learn a new programming language

In the world of software development there’s always something new popping up. New languages, frameworks, operating systems, databases, you name it. The challenge for a developer is to stay on top and ahead of these new technologies. It can be very tempting to give up and not learn anything new, but I want to propose that learning new things like a new language or framework can be very helpful!

Learning begets learning

The more you practice the art of learning something new, the easier it is to learn new things. This sounds like tautology, but it is true. Continue reading

Coder’s block

Writer’s block is a problem that writers have when they simply don’t know what words to put on the page. Developer’s have this same problem, I like to call it coder’s block. Where does it come from, and how do we get rid of it? Let’s dive in.

Where coder’s block comes from

My theory is that coder’s block is the result of burn out. When you are so close to your work for so long burnout becomes a serious problem. At first you will start to make “simple” mistakes more frequently, and eventually most things start to take longer to finish. This all builds on itself and starts to erode your self confidence in your work.

Once your confidence is being questioned it is every easy for things to snowball to the point where you are afraid to write code for fear of it being another broken thing to fix. At this point you are deep in the throes of coder’s block. Nothing seems to work right, and it seems like it never will.

The worst part of this is that most of the damage is self inflicted.  Continue reading

Doing the work

Sometimes it is painful.

The deadline that is looming closer. The code that just won’t work correctly no matter how much you cuss at it. The simple library upgrade that wrecks your program completely.

But it has to be done. And you need to do it.

At times like this you need to remind yourself that nothing great was ever created without some struggle. Everything that was ever created that is considered good involved some one doing hard work to make it happen. You are no different. If you are going to make something good, you will be working hard on it. Continue reading

Recent experiments

A fireworks experiments

Experiments are cool!

I’ve always been curious about the world around me. And now thanks to reading a few great books I understand that I can easily do experiments on the world around me to learn where I can push the boundaries to learn new things!

Framing these things as experiments is a powerful mind hack: If an experiment fails, that’s ok! It was just an experiment. Keep that in mind the next time you find yourself pausing before trying something new or scary.

Let’s take a look at what I’ve been up to!

Continue reading