Github Pages

I couldn’t believe how easy it was to get a page setup with Github. The other weekend I went to setup a Github repository for the upcoming CoderDojo ABQ and decided to use the Github Pages feature to get some information up and running.

I found a CoderDojo that was already on Github, whose format I liked. I forked it, renamed it and had a page up.

Next I downloaded the windows client, grabbed a copy of the repository and loaded up new imagery and put up some quick content. Committed it and I now you can see CoderDojoAbq. This took me about an hour and I still don’t really know Git at all, but I extremely impressed with how easy it was to get something nice setup. I was also impressed with the Windows client. I didn’t read any documentation and only knew the basics about how the Github pages functioned, everything was just natural and smooth.

My next plan is to get a tutorial up for how to fork and change the site and the push the changes to the official site (I’ll have to learn how to do this first).  Ideally, the students themselves will be able to update the website with their own projects or add features and designs.

 

 

Now with more code!

I started this blog with the intention of writing about the city and the exciting events happening. The only way I got this site up was to force myself to not worry about how imperfect it was. I can spend hours rewriting sentences, fixing css, changing themes, installing plugins, and never get any content up. In fact I have done that before with previous attempts at blogging.

I decided I would take the advice of given to startups all the time and just launch and fix things as I go without obsessing about it being perfect. In addition to this blog, I also planned to start a personal blog as a place to put up coding projects and my thoughts that weren’t focused on Albuquerque. However, I cringe at the thought of setting up another site, so I am just going to start putting my programming projects and thoughts on this page too. Pivoting? 😉

Albuquerque, tech, and a bunch of programming!

Even though I am going to not focus on things being perfect, if you see an error or something that can be fixed, let me know.

 

Programming in Albuquerque

There are a lot of exciting events on the horizon for programmers and software engineers in Albuquerque. I am disappointed that I don’t have time to attend all of these. Must find a way to create more time.

  • Android App Clinic, January 17, Learn Android development.
  • Lavu Hackathon, January 23 – 25, A second Lavu Hackathon. If you missed the first one this is your chance, it was one of the funnest programming activities I have done.
  • Global Game Jam, January 23 – 25, If games are more your style check out the Game Jam.
  • BowTie Springboard, January 31 – February 13, Use the BowTie platform to create a new project. Register by Jan 30, intro Jan 31, Demo on Feb 13.

In addition to these events there are two startup weekends coming up:

My understanding is that for the Youth Startup, they have adult programmers help get minimum viable projects up (if needed), so contact the organizers if you are interested.

For Startup Women, men can participate too, as long as the teams and projects are led by a woman.

Programming Requirements for High School

One item that came from the Hour of Code was that programming should be required in schools if we want to see our young people learning computer science and being introduce to programming languages. As I was looking through the prefiled legislation for the upcoming session, SB14 stuck out. SB14 will allow students to use a programming class as the foreign language requirement. It looks like at the beginning of 2014 there was a lot of debate about it as Jacob Candelaria tried to introduce it during the previous legislative session.

pogramming
Hello World

I think it is great to attempt to promote programming in schools and something I certainly support, but I can’t help but think this is the wrong way to go about it. The foreign language credit serves a completely different purpose than a computer language credit would. Foreign languages help introduce you to a different culture, how languages can work, they increase your communication skills and I think help with the understanding of your primary language. Spanish/bilingualism is extremely important for New Mexico, with companies locating here to access the bilingual talent, not to mention the increased traded and partnerships with Mexico. Finally, any foreign language is going to be college prep because most universities will require foreign language credit. Some research shows that code.org and others also disagree with this approach.

This is a list of the current graduation requirements for NM. In a perfect world I think they would change an elective credit into a computer science/programming requirement. I’m not sure if this is the right choice for New Mexico because I don’t know if there are enough teachers throughout rural New Mexico to support a mandate like that.

The next best would be to let computer science count as a science or math credit, which is one of the primary actions code.org is promoting. I would love to see if this could be modified to count programming as a science or math.

On a different note I am looking a starting a Coder Dojo in Albuquerque. It will need volunteers, if you are interested send me a message.

Hour of Code

Wow, I have never been to the CNM STEMulus Center and now I am at four trips in less than a week. This time I went with my son for the Hour of Code event. It was a packed house of kids of all ages, which was great to see. I was surprised at how excited it made my son. He has always been somewhat interested in programming and I have done some online courses with him before, but it didn’t really keep his interest. I guess that is the difference between using Python to parse a webpage and using JavaScript to program a game. The games are just more fun. His thoughts afterward made my day:

I will never look at games the same way. Every time I click or perform an action I am going to think about how many lines of code it took to make it happen.

He has been unwavering in his dedication to being a science major and becoming an astronaut, but he said it might be interesting to be a programmer. This is the first time I have ever even heard him consider something different.

Hour of Code
Hour of Code – Albuquerque

The kids had fun, but one major thing came up in discussion:

What resources are available for a teenager to learn programming in Albuquerque? 

If they don’t have a class available at school (which most don’t), they are forced to learn it on their own. There are a numerous high quality online resources to learn programming, but it isn’t the same as a class or working with others. Hour of Code did a good job of getting them interested, but what is the next step for an interested student? Private tutors, online learning or technical parents; that isn’t exactly opening up programming to everyone. Are there any clubs, programs, classes in other cities we could copy? Or any resources here I am missing?

All I can think is that the kids are smart enough to see when adults don’t mean what they say. We can preach that every student should learn to program, but if we don’t require it in school or provide a way to teach it to them, will they believe us? And more importantly do we really mean it?

 

Hackathon – Programming Take-aways

The Lavu hackathon last weekend was a great learning experience for me. Here is a list of my personal take-aways from the event that I thought I would share:

  • I code slow at work. Our code base is huge and complex and written by multiple people. It takes a lot of thought and planning to make sure you write something correctly. Starting a project completely from scratch where its entire existence is directly in front of you allows you to write code extremely quickly, and that is exciting.
  • I rely on a lot of motor memory and tools. I borrowed a laptop for the event and had a fresh install of Visual Studio 2013 Community Edition (which just came out for free) on it. Everything was at the defaults with no plugins. At work I have Resharper, short cuts, other tools and plugins and four years of customizing my setup. I have no idea how it is setup. One thing I need to do is start from a fresh install and set things up exactly how I like them and record all that so I can duplicate it when needed. In the future I probably need to bring a full keyboard, Home/End/Del are too critical for me to try and locate a smaller key in a different spot.
  • I exercise regularly and eat much better than I did in college. My body has a rough time handling not moving, programming all weekend and drinking liters of sugar and coke, not sure how I lived off of that for so long, but it is hard to do now. In the future I still need to make sure I take a break and limit the sugar intake.
  • I’ve started plenty of projects before and worked on them for a bit, gotten bored and abandoned them. Having a deadline with a demo is a huge motivation for completing something. I need to find a way to work this into personal projects.
  • I spent too much time making things perfect at the beginning. The first item I started on was my connection screen that would work and perform exactly how I would envision it as a full product. I never demoed this screen, no one ever saw it and there was no reason not to hard code all that information into my system. I need to really focus on what the minimum viable program is an
  • .Net is not what people want to use to build minimum viable products at a Hackathon or startup weekend. People want web utilities, apps and sites, so I really need to be comfortable using JavaScript and PHP or perhaps deploying an app to Azure. Need to research this more.

Hopefully I will have a chance to try again in the future and we get to see more events like this in Albuquerque.

Lavu Hackathon

The first Lavu API hackathon occurred this weekend and I was lucky enough to be able to attend. This was my first time attending a hackathon. I had no idea what to expect, but it is something I had always wanted to do and luckily it ended up on a weekend were I had no other obligations.

It was a blast! The Lavu employees did a great job of making everyone comfortable, there was a ton of food, drinks and even some swag. They explained their API and they have a web view section (that I think they just implemented) that allows the developer to add a tab into the actual Lavu interface pulling content from their own system. This allows developers to tightly couple their modules into the actual system and seems like a powerful piece of extensibility. Everyone there was friendly, helpful and had interesting ideas, it was great getting to meet other local programmers I wouldn’t otherwise know.

Lavu swag at The STEMulus Center
Lavu swag at The STEMulus Center

This was also my first time at the STEMulus center and it a beautiful setup. It was perfect venue for this event, plenty of monitors, rooms to work in, and areas to relax. I think it was a success for Lavu, and the people that went, I certainly learned a lot and it was great having a project with a set deadline and just powering through a bunch of code with little distractions.

It sounds like they learned a lot from this and will be trying to do again in the future, so if it interest you keep your eyes out. I think they main thing that can be better is to get more information about the event out sooner, that should attract more turn out and give people a chance to come up with better ideas. I couldn’t even find any public information beyond the date and place until a few days before.

This is just the type of event that Albuquerque needs to grow as a tech and startup community. It gives developers a chance to practice, learn and network. It lets the company meet local developers, get real feedback about their product and some new ideas. If everything goes right it could give a developer some income and the company a new product.

As a programmer I felt it gave me a chance to learn about my abilities and real insight into how I program and what works or doesn’t work. I’ll share those later.

Next up is another trip to the STEMulus center, this time with my son for the Hour of Code event on Thursday. Bring your K – 12 year old.