If you are a developer in the web development world, you know that we are in a fast evolving industry. There are tons of new things happening every day. In order to be productive and build great web applications, we need to learn everyday. Attending conferences is one of many great ways to learn. In the conference, I can observe what the current trends are, how people solve problems, and how to make our development lives easier with new tools.
Luckily, my company, SolarCity, supports me to attend conferences. Our team went to the 2016 Fluent Conference in San Francisco last week. It was my first time attending a large-scale programming conference, and I really had a great time learning from all sorts of topics there.
Below is my learning summary:
The web development world is really energetic. Lots of companies provide frameworks, tools, testing, deployment solutions, trainings, etc. The barrier to start building a web app is becoming lower and lower everyday.
If you are front end or full stack software engineer, you usually manage your app’s dependencies in your package.json (NPM) and bower.json (Bower). Do you have the experience that you need to update all the dependencies to the latest version?
I understand some developer don’t like to use the latest version of libraries because of compatibility issue. However, I feel most of the time, the updated version of libraries are more stable and reliable (bugs fixed and people’s open source contribution to make the software better). Our team at SolarCity before didn’t update some dependencies to the latest version for one of our apps. However, I found out that one of the error we saw wouldn’t even happen if we use the latest version of the library. Therefore, after discussion, we decide that we would use the latest version of libraries from then on. One problem is that it’s such a pain to update dozens of libraries in our json file.
Here is the package file for my previous project: OpenElect. Oh dear, how many dependencies are there…it will take years to manually update the version number.
Ask not what your industry can do for you–ask what you can do for your industry.
In Hack Reactor week 1, we had a class in which Phillip Alexander taught us about open source contribution. Before we talk about “contribution,” let’s find out what open source is. Wikipedia’s definition: “In production and development, open source as a development model promotes a universal access via a free license to a product’s design or blueprint, and universal redistribution of that design or blueprint, including subsequent improvements to it by anyone.”
The easiest definition for open source is this: it means anything that is free to use, reproduce, or redesign. We all know the power of crowdsourcing. If there are 10 thousand people reviewing and contributing to a project, we would assume it to have less typos/bugs. Open source contribution’s goal is to make software safer & better.
The programming Editor is a Software Engineer’s best friend (quote from Brian Hsu!!) A software engineer spends most of his time in Editor to write codes (excluding the time we spend on Google and Stack Overflow, of course). So what Editor should you choose for your software engineer life?
Well … there is no real answer for that. You choose whatever you like and make the best use of it. Each Editor exists for a reason. If you can have the highest productivity using a certain Editor, then go for it!