I want to apologize to all of you who may have been trying to use the site. Earlier this year I moved off of a shared hosting platform that had served me well for years. However in the year prior to the move things had just bogged down no matter how I tried to optimize the site. So I jumped over to DigitalOcean. I love these guys and if you have not tried them yet you should! They have all sorts of dedicated hosting options starting at $5 a month including one click applications setups and just raw servers. Anyway I had initially opted for the bare bones server mode and I did the entire LAMP and WordPress setup on my own. Ever since then I have had odd issues with poor MySQL performance and more recently (past few months) the database just quits responding to the application. So I decided to do yet another transition to one of the Digital Ocean WordPress installs. So here you find yourself on the new server with a clean install of all the goodies and hopefully I can start focusing on content not troubleshooting for awhile.
If you have been following me for any amount of time you will know that StaticNAT.com has gone through a few changes. This is no different. Sorry for any hassles this causes. The reality is that I moved to a dedicated host for this site I think about a year ago. Things have not been right since them. My RSS for the #WhoIS series has been borked, and all the iTunes listings have vanished. Randomly some posts have the wrong permalinks and that was an issue I fought for months to get somewhat working.
The good news is that I have really been learning and writing a lot in the past six months. I have used Medium for what little content I have published but as much as I LOVE that platform it is not mine and I don’t get control of my work. So I am doing a refresh on my core site. I plan on continuing to use Medium as an outreach tool for my past and future content here and in other places but StaticNAT is not going anywhere.
With that comes a new Theme: Make by The Theme Foundry which is free, easy and super clean. I really wanted the ease of use of Medium but the reality is that current blogging platforms don’t give that ease of use yet. Also a few years go I bought the great Genisis Framework but for what I am trying to do there are to many nerd knobs to turn to get a clean usable platform to write on.
Since the very beginning back in 2006 when I started this site I have been trying to figure out some branding. Branding is hard with you use a technical term like StaticNAT that does not have an icon to go with it. So this last year my friend Wes Kennedy Twitter did a rework of his blog WhiskyKilo.com and had his sister Thea Kennedy do up some new graphics and design principles for him. I love the branded no logo concept they ended up with and asked here to do something similar for StaticNAT. What you see with the new styling, colors, typography and images are all thanks to Thea!
Well to wrap this up keep looking for new stuff and bear with me a bit as I clean up some of the old messes. I will get the #WhoIS podcasts back up to where you can access them and hopefully do some more this year…no promises. Thanks for being my readers!
I have spent quite a bit of time over the past few weeks trying to see how development will fit into the course of my career moving forward. With the help of some great people like Matt Stone and Matt Oswalt I am charging ahead with Python. This post is about setting up my Mac to be ready to start coding. Sure I have the default install of Python installed but I have seen that I need more of an IDE than what is provided by default. Watching Matt Stone code in VIM I was impressed but I have just never spent enough time in VIM to be comfortable. So I am going to go with Atom and extend it to meet my requirements. What follows will be that process.
OSX is a bit of a hassle when it comes to application management. A solid package manager solves that. Now I can’t say how good Brew is I can say it has lots of fans and it seems to work for what I need.
So start by installing Brew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
With Brew installed now we can use it to setup Python. I had a few issues but its because I had tried some other install steps that broke the Brew Process. Once I fixed those it was easy.
So Just do the following to install Python 2.7.x
brew install python
As you can see I have updated this post to show Sublime Text as my IDE. I really wanted to love Atom but it just had a bunch of random issues that I could not work around. Since moving to Sublime Text all those issues have vanished.
So start with Download Sublime Text from here.
After you install and run Sublime Text you should check out this superb writeup at RealPython.com on how to turn Sublime into a full featured IDE for Python. This is what I use and while it is has things I don’t need right now, it is so close to perfect there is no reason for me to mess it up by trying to edit it down. Just follow it and then your good to go.
Thats about it. From there open up any .py file and you should see any of the PEP8 markers no the left side and all the python syntax broken out.
With that done you have a base of what you need for for development for Python in OSX. I have had help from the following sites pulling all this together.
It has been a busy few weeks. A big part of that has been rebuilding my home lab to focus on doing real lab work not dabbling in whatever struck my fancy over the past few months. In doing so I have been spinning up machines left and right. Frustratingly I have had to spin up some of those servers 4 or 5 times in order to get to them to do what I need them to do.
Over and over and over we have been calling for the elimination of complexity when its not required. But in the simple deployment of a lab it takes digging around the web, countless hours of reading and multiple failed attempts, it would seem that the industry is not eating its own dog food. I would rather be be actively working with Openstack, OpenDaylight or ELK Stack opposed to troubleshooting why my install does not work after following directions to a tee.
We work hard on projects and products that we want people to adopt and buy. Those people honestly usually have better things to do than dig through pages of documentation trying to figure out how to get those projects and products installed. There a solutions for this. Some people would say use the automation and configuration platforms like Ansible, SaltStack, Chef or Puppet. I don’t really disagree. But building out the configuration files for each of these takes time even if they can deal with a large set of operating systems. There are also package management platform like apt and yum in the operating systems. But again these take time to keep up to date and are often at least a rev behind shipping code.
So I would like to propose that we all do something different using something we already have. Do something that many have been doing in some form for years. Build your dreams in projects and products. Then choose your preferred operating system and take the time to build a solid OVA and make it available to your clients. There are lots of options for keeping an OVA up to date with minimal effort. Operating systems provide options for automated updates using package managers if for no other reason than keeping security updates current. Once we have enabled our customers with rapid deployment of the projects and products we want them to use then we can lean on the automation and configuration platforms to keep them up to date and in compliance with organizational policies.
Along that line there is no reason that these same projects and products cannot be deployed just as they are now for clients who have more specialized requirements or preferences for platforms other than that of which the OVA was deployed on. Flexibility will always be a critical aspect of what we do in IT. However simplicity when possible should always be our goal. I would love to get others input on this. Please comment or join the fray on twitter you’ll find me there at @joshobrien77.
A little over four years ago I wrote: “the best $1.80 I ever spent.” In that post I broke down the concept of what my value was and how I was no longer going to play by the rules. The organization that I joined on December 14, 2010 was Language Access Network. They let me break those rules and do great things. In coming to work there I took on the role of CTO and went from just a guy who does networks to being someone who the business looked to for ideas, strategy and vision. That has been HUGE for me. I have learned so much ranging from finances, to how to build a team and much more than I could ever cover here. I also got to learn why I really do what I do as I laid in this post. For me that was a turning point, not only in how I did my work for Language Access Network, but also how I saw my role in technology and society.
So it is with much regret that today I am writing to say that after more than four years working with a great team at Language Access Network and Carenection and building a team of amazing people, I am taking my leave. All the proper people have been notified, the resignation letter sent, the offer letter accepted and now all that is left is this – tell people where I am going and why I am going there.
So lets start with the where part. Beginning February 16, 2015 I will be employed by Brocade as a Practice Principle on the Professional Services Delivery Team. I can’t go into a lot of details about what I will be doing just yet, but you can bet you will be hearing about them as things progress. What I can say is that the opportunity with Brocade is going to let me help change the way we do networking in the future. As I stated in the post Why I do what I do. “Being driven by what you do is great, being driven by who you have helped is better.” So yes, I will be leaving a company whose entire ethos is to help others in a critical point in their lives and care, but I will be joining a team that is going to be helping people like me do their jobs better and more efficiently. That excites me. Add that to the All Star Team that Brocade is putting together around SDN, and it’s the perfect opportunity for me to move back into a technical role and do something else amazing in my career.
This is hard. It is hard leaving people who I really care about and a business that I have sunk my soul into over the past four years. It will be challenging (BUT THRILLING) to go back to being a tech again. But that’s OK because some of the best things in life are hard and if you put the effort into doing them well its worth it in the end.
So to my Team at Carenection – keep winning! You’re the best group of engineers I have had the opportunity to work with. To the Language Access Team – you make an amazing difference every day and I will miss hearing about the wins. And for me… a challenge awaits.