Skip to main content

Hackathons, Android Courses, and Catching up

Wow, what the hell? I look away for one second and I've already missed two posts? That's not a great start to the year...

The Android class I'm teaching is off to a great start though. So far we're 3 lessons in and have covered quite a bit. So far we've added new activities, created some helper classes, connected to a web service and pulled down data, as well as authenticated, created some settings we can save and load, set up a SQLite database, stored records to it, pulled them out, and then turned them into objects for us to see on the screen. We've adjusted the colors and properties of the items at run time and even created and utilized BroadcastReceivers, Services, and more. I'm impressed with what the class has absorbed so far, and what I've learned by preparing the class. I'm really enjoying it and the more Android development I do, the more I learn it's capable of, and the more I like doing it. In fact, our project for the hackathon I attended this weekend was an Android project.

A few coworkers and I attended an "Apps for Energy" hackathon this weekend in DC at the lovely +1776dc. The hackathon was hosted by the D.o.E. for the purpose of getting people to utilize their new APIs and Data sets. Some of the information they have available is pretty cool and has the potential to be used in some very interesting ways, but right now, the APIs are just plain awful. One of the APIs wasn't even working for the competition. The website was broken and when I mentioned it to the host, the only thing he was able to do is email one of the internal guys to take a look at it. The hackathon is now long over, and he still hasn't received an "I'm working on it" email back (I was CC'd on the emails). In fact, several of the APIs were so badly structured, that at least 3 of the projects people presented were simply improving on the interface we could use to access them. One of the data sets, EIA, was immense. Having nearly 500,000 data series and nearly as many endpoints, it was an incredibly feat to consume and digest. In fact, we only ended up using one value from one record in one location for our demonstration because of that. We primarily utilized the Green Button data instead.

Green Button is essentially the data coming back from smart energy meters, like the ones the electric company installs that let you see real time data from your energy usage. The data coming back to the centralized location isn't real time unfortunately (there are plenty of more interesting uses if it was real time), but it is typically available after an 8 to 24 hour delay. With that in mind we developed an app called "Our Energy", a bit of a play on words concerning the use of hours of energy usage. The premise of our app was that you and a neighbor, a friend, relative, or random stranger could compete for the better energy usage utilizing the Google Play Games services for matchmaking, scoreboards, etc. You also had single player challenges that you would typically complete by playing multiplayer, but could also be done alone. Things like reducing your peak energy usage by 5% from the previous day is an example of what the challenges entailed. You could also obtain achievements for particularly memorable things such as reducing your median energy usage by 25% from one month to the next, etc. When you unlocked these achievement or completed a match, you were able to share your achievements with your social networks or anyone you wanted to rub it in the face of. We would also calculate what your yearly energy savings would be over what your previous values and competition were and let you know how much you're saving. Suggestions like switching to LED light bulbs, or turning lights off when you left the room helped point you towards energy efficient actions you can take to both raise your score and make you a better person.

Overall, I'm pleased with our results. We didn't win, but I definitely learned some things about Android development in that 25 hours (yeah, the hackathon had odd hours and was a friday to saturday thing. weird), and as long as I learned something new, I consider the hackathon a success.

Moving on, my Dart Flight School is coming up soon too. That will be interesting too. I'm somewhat familiar with Dart but haven't used it beyond the tutorials yet. I'll also be doing a "lunch and learn" in a couple months on Dart for the people at work, so I'm considering this as a warm up. I think it's a very interesting language and concept for the future of the web, and I think we could benefit from using it at work, but we'll see where it goes. We're mostly a .NET shop, so there'd have to be an incredibly solid reason for us to switch off the evil that is ASP.NET. Hopefully they'll see Dart as that reason.

All in all, these last few weeks have been preparing lessons for my Android class and teaching those lessons. Things are going well, even if it is a bit hectic.

Oh, one more note, +Coursera is hosting an Android development series/specialty with content being provided by the University of Maryland and Vanderbilt University. Pretty cool. They even have what's called a "Signature Track" where you can get a verified certificate for completing the course. It costs $49 for each course in the series (and I think you get a certificate for each one), but you only have to pay it one course at a time. There's three courses total and if you've completed those, you can take on the final project course. All together you're paying about $200 for some really solid Android development courses with a certificate you can take to your next job interview.

I'm really diving in head first into Android development to push myself to do what I've been aiming to do for a couple years now. I've taken all the preliminary steps multiple times, but never put forth the effort to put my learning to use. By both teaching and participating in Android development courses, I'm well over my head in mobile development and that's exactly where I need to be in order to swim. After all, there's no diving allowed in the shallow end.


Popular posts from this blog

Galaxy Nexus Multimedia Dock

First off, I apologize for the delay. I've had some things come up, the least of which being my HDD crashing, and side projects have been pushed back and around a bit lately. Anyway, now on to what  you all came for: The Galaxy Nexus dock mod. Completed Nexus S to Galaxy Nexus modified Dock Nexus S Dock box Nexus S dock contents: The dock and a micro USB power supply I started out with a standard, Samsung branded, Nexus S Multimedia Desktop Dock (Model: ECR-D1A3BEGSTA ). Inside this box is the dock itself, which is comfortably heavy so you don't have to worry about it sliding too much, and the power plug, which goes straight from a US wall outlet to a micro USB port, no standard 5V outlet on this one. The first thing you'll notice is that there are no visible screws to remove to aid in its disassembly. This gives the dock a very nice, clean look and, unfortunately, also makes it a bit of a headache to get in to. Not to worry though, if you have a razor

My mind is a train yard

I suffer from have ADHD. Attention Deficit Hyperactivity Disorder. I was diagnosed with it at an early age and while it was fairly difficult in childhood, as an adult I've largely learned to deal with it and developed coping mechanisms to help with the more difficult aspects. I thought I had it mostly under control and that it no longer was influencing my life in any major way. I would laugh with my friends about it when I would get hyperactive and jumping back and forth between topics. It had become a joke. It's easier to ignore that way. I was wrong.  I read an article recently about people who have ADHD and things to remember/tips for living with them. I learned that many of the things I do, ways I act, and my general mannerisms are a result of, or influenced by, the ADHD. After learning more about ADHD in comparison to ADD (Attention Deficit Disorder), I learned that in 2013, ADD was reclassified to be an under-diagnosed  aspect of ADHD. There are apparently three kinds

Don't "Attach to Process" from a second Visual Studio window

Just don't. I just spent the last few hours debugging an extremely irritating issue with Visual Studio and attempting to attach to my local IIS. First, some context: I use Visual Studio as two windows to make the most use out of two monitors. I have the main VS window, the one with the menu bar and all the buttons, open full screen on the left monitor with a few code tabs in it. On the right/primary monitor, I have a code tab pool window, that I pulled out from the main VS window, set full screen with the solution explorer and a few other tool windows anchored to the side. Back to the story. Late yesterday afternoon, while debugging some things on a site running on my local IIS, I noticed that my Visual Studio seemed to lock up when I went to attach to the W3WP.exe process. It's happened once or twice before, so I force closed VS and tried it again. It worked the next time, so I continued my work and ignored the anomaly for the time being. towards the end of the day, it h