I took my 17 year old son, Caden and my 8 year old son Ryder.
The first session was on Python. Python is a great language to start out with. I like Python a lot, it was the first language I used professionall after COBOL. They had a good curriculum set up for us. We did a series of games where we accepted input, tried to guess a number and whatnot. Ryder had lots of fun playing the game.
The second session was modding Minecraft with Forge. We don’t run Minecraft at home yet, we probably will in the next year. Minecraft is written in Java and the author, Notch, has made it very open for modification. Fortunately Caden knew how to use Minecraft so we could see our modifications in action. We did stuff like spawning lots of dragons based on certain events. It was a hit, very visual.
Finally we did a session on Arduino. The kids were given kits whith lots of resistors, LEDs, a bread board, an Arduino board and some other small pieces. We installed wires, LEDs, a switch, a dimmer and a resistor on the breadboard and saw an LED light up. After that we hooked the breadboard up to an Arduino, wrote a little code to control the LED and we saw it work. I have to say for Ryder it really clicked, he was amazed that software he wrote was running on a little piece of hardware. I’ll get a book on more Ardruino projects and more hardware, Ryder is excited.
I signed up for a 2 day workshop on building reactive systems with Akka in Scala. I saw some code that reminded me when I used to say, “It’s shit like this Scala” a lot. I previously read a book on Akka but I still think I got something out of the workshop. The workshop went through the mechanics but I’d be interested more to see how you practically organize your actors. Are actors nouns in your domain? Are they some representation of work that needs to get done? Perhaps they are things at the horizontal tiers of your architecture like DAOs, managers or controllers.
Other Notable Talks
I saw a talk on microservices. To me it just seems like a sensible (maybe more granular) SOA architecture. The big innovation is containers I suppose. Currently I see containers as things I can bone up on if I think I need them to solve scaling problems, for now I don’t.
A speaker with a Python background spoke about testing. He said that dependency injection promoted bad design. That totally made me challenge my existing assumptions. Just kidding that made me embarrassed for him that he said it in public and on camera.
The Twitter talk on Scala was good. You hear so much about Scala at Twitter but he said that 35% of their code was Scala, I guess they have lots of Java as well. They sure seem to take ‘on boarding’ engineers to a whole other level.
A talk on Design with Akka was good. I wish there was less time spent on background as opposed to how you would structure your actors within a given business domain.
Other talks were on getting the most out of GitHub, remote working, IPython Notebook for data science, keeping architecture simple.
Zeitgeist of OSCON 2015
This stuff is all the sexy.
I also talked to a lot of people that are working remote or are hiring remote workers. Maybe this is like when you buy a model of car you start to notice a lot of that model on the roads. It could also be wishful thinking. I’ve been remote for 3 years, I like it and I’d like to think it’s the future.