Every week here and in our newsletter, we feature a new developer/blogger from the DZone community to catch up and find out what he or she is working on now and what's coming next. This week we're talking to Jeremy Likness, principal architect at Atlanta-based iVision and frequent contributor to our .NET zone. Some of his most recent posts on DZone include:
- The Top 5 Mistakes AngularJS Developers Make Part 1: Relying on $scope
- Revisiting AngularJS with TypeScript
- A Different Angle: What is AngularJS?
1. What have you been working on lately?
I love being a consultant because I get to work on multiple projects in different areas. The majority of my focus lately has been helping customers either build new or re-platform existing applications to provide a Single Page Application (SPA) experience with responsive design. We are a Microsoft shop so the backend is typically SQL, Entity Framework, Web API and ASP.NET MVC but the front end has primarily been AngularJS with Twitter Bootstrap. I am wrapping up a very exciting engagement to help a company build their future roadmap. Our team conducted an analysis of their datacenter, storage, backup and recovery solutions, infrastructure, and custom applications and created a strategy to improve efficiency across the board, reduce margins, increase scalability to generate more sales and ultimately position their suite for a cloud-based, mobile-ready, service oriented offering. I enjoyed working across practices (applications, data center, infrastructure and cloud) to see how business drives software, which drives infrastructure demand, which drives hardware and cloud solutions. I also am participating in a review of a large corporations big data strategy, identifying areas we can help with the management and extraction of data from their Hadoop-based platform.
2. You seem to identify mostly as a web developer, specifically with a focus on AngularJS. What are some of the most enjoyable and least enjoyable things about coding for the web? Where do you see web development going in 2015?
3. Are there any particular developer tools or resources you couldn't live without?
I believe Visual Studio has matured tremendously. The latest versions support common open source libraries and platforms like NodeJS, NPM, Bower, Grunt, and Gulp, so although I love working in WebStorm, I'm finding less need to go there as I'm working on solutions that use Microsoft.NET for the backend. I'm a huge fan of JetBrain's ReSharper tool for helping me create better code faster, and because the web is evolving to run on RESTful services I use Telerik's Fiddler and the Google Chrome extension PostMan quite often. Speaking on Chrome, right now I simple couldn't live without Chrome's developer tools. Internet Explorer is evolving quickly but I still feel most comfortable and am able to see the most productivity using F12 in Chrome.
4. Do you have a favorite open source project (or projects) that you've contributed to recently?
I have my own set of open source projects to help people learn Angular and TypeScript at http://github.com/jeremylikness. I contributed to the AngularJS documentation but a lot of my time the past year was wrapped up in a Windows 8.1 book that featured almost 100 individual open source projects as examples for building for the platform that I published to CodePlex at https://winrtexamples.codeplex.com/.
5. Do you follow any blogs or Twitter feeds that you would recommend to developers?
I follow dozens of blogs and Twitter feeds! For big data I follow the Hadoop and Cloudera developer blogs. Microsoft's developer blog is a great source of information for keepign pace with what's coming out of Redmond, and the main technical magazines are always fun to keep pace with including the Verge, Ars Technica, Engadget, and Wired. I am a huge fan of Smashing Magazine to help me understand design which is something developers I think tradidtional don't take the time to learn or understand. For personal blogs I really enjoy Gojko Adzic to keep up with agile and Josh Carroll, John Papa and Shawn Wildermuth for Angular and web development in general. I also make heavy use of Google Alerts to keep pace with keywords like big data, SPA, Angular, web development, cloud, hybrid IT and more. As a community service my routine is to get up early in the morning and wade thorugh hundreds of new articles and posts to find what I think are very interesting, cutting edge, informative or breaking news and send them out on my @JeremyLikness Twitter feed. I think the reason I have so many followers is that they know my signal-to-noise ratio is high and they can count on the links I share there without having to spend the extra time to wade through announcements on their own.
6. Did you have a coding first love -- a particular program, gadget, game, or language that set you on the path to life as a developer?
The Commodore 64 will always be my "coding love." I taught my self BASIC on a TI-99/4A at the age of seven because I was very bored one day and we had no games. Once I realized I could conceive of something in my mind and achieve it through the power of code, I was hooked. I moved on from the TI-99/4A to a Commodore 64 "bread box" and learned machine code and assembly. I wrote so much code on that machine I still can remembder the hexadecimal addresses of various registers that controlled colors, sound, and display resolution. In fact it was my love for the 6502 chip that prompted me to use an emulator as a teaching tool for TypeScript and Angular (https://t6502.codeplex.com/ - but with fair warning it is outdated!) I took a hiatus from programming for a few years and when I returned the days of the Amiga, Apple, and Commodore wars were over, so I ended up writing C++ on Linux and x86, but I never quite had as much fun as when I'd spend entire nights figuring out clever ways to save time in a machine language algorithm or trick the processor to do things it wasn't supposed to be capable of.
7. Is there anything else you'd like to mention?