Playing with code can be a bit intimidating.
I mean… I build stuff. When I mess around with new code that I really don’t know how to use yet, I usually end up breaking stuff.
I do however feel like it is important to push the boundaries of what I know how to do. In many cases it is in this area of pushing the limits of my knowledge that I indeed add knowledge to my skill set.
So how does a guy go about trying new things in code without going totally crazy?
Here are a few things I’m trying to implement into furthering my personal knowledge beyond what I’m already learning at the Iron Yard.
Use Branches On GitHub Projects
One of the best things that I’ve learned to use (at least in a very rudimentary way) since I’ve been at the Atlanta wing of the Iron Yard is GitHub.
In a couple of words, GitHub allows me to sleep better at night. Although it is mostly pushed as a version control system (it is totally that), it also allows me to do a few other really great things. Especially in regards to playing with code.
The big way it helps me with code is this. If I am living life on the edge and only working on the Master branch (if this terminology makes no sense to you, you may consider reading this article) I am using one important part of GitHub.
If however I am using different branches for different features… well, let’s just say that it is really a good idea.
When I have something that I want to try out and it is particular to a project that I am working on, the first thing I do is create a new branch off of my master branch. This gives me two things… first it gives me the entire project as it stands on the master branch. Secondly it gives me the freedom to try anything I want to without messing with my master branch. If the functionality is ultimately successful and I want to roll my “experimental” branch into the master branch, it is a simple matter of a few clicks.
This has to be one of the best way’s to try new things that pertain to a particular project you are working on.
Start A Project Just To Play With
Another good way to play with things is to simply create a new “playground” project.
This is especially helpful if what you are wanting to fiddle with isn’t tied to any particular project.
You don’t have to recreate a new project every time you want to try something new. Just have one that you can always go “play around with.”
This is actually something I’m going to be doing in the next 24 hours or so. I’m supposed to do some writing about SLIM a language that allows a person to write simple code that, when compiled is really HTML.
I’ve messed around with SLIM only once or twice, both times it was interesting but I’ve not had the time to do much beyond just the basics. Tomorrow I intend to do a pretty deep dive into it.
Keep A List of Things You’re Curious About
If learning new ways to do things is important I think it would be a good idea to keep a list of things that interest us. Then when we do have some time to play around and learn some new stuff, we can go to that list and see what strikes our fancy.
This is actually something that I’ve not done yet. I sort of have a list of things in my head that I want to look into some time, but to actually write those things down just might be a really good idea.
Do what I don’t do yet. Keep a list of things that you may be interested in exploring at a future date.
Wrapping it all Up
I truly believe that continuing to learn new things in the world of web development is super important. Even if it isn’t something that we use on a daily basis. If I have a rudimentary understanding of something and it shows up as a “would be nice to have” part of an interview or bit of contract work… I can feel good checking that box off.
It’s also important if you work primarily on the back-end (or the front end) of a project. If you have a bit of an idea how the front end (or back-end) is going to be written… you can avoid future code conflicts by keeping those things in mind.
Regardless of the field you find yourself in. Push yourself to learn new things. It just might set you apart “just enough” to be important.