Skip to main content

What I Learned In 2017 : Technology and tools I learned as part of my code therapy

Taken from the internet

The year 2017 ended in the usual festive way. It is, therefore, just standard for us to be retrospective of the year that was and look forward to new plans for 2018. Personally, last year was life-changing. Bleak at it may seem, I managed to look at the lighter side of things. I literally stayed at home the whole year recuperating from a health issue. Instead of stumbling into depression, I resorted to code-therapy! From mid-2017, I shifted from full-time desktop developer to a wannabe web developer. It was fun, like being handed with a new toy to play around. Here is my alphabet listing of what got me interested and always looking positive last year.


Angular

I once have the desire to learn Angular late 2015, when it was still referred to as AngularJS. Because of work schedules and other priorities, it was buried from my bucket list. Last year was different, I had time. I started with Angular 2.0 and due to the fast releases from Google, my last personal project ended using Angular 5.0. I believe the project structuring, the CLI, and TypeScript made my transition easier and fun.

Runner ups: AWS and Azure

Bootstrap

Beginners love Bootstrap. I loved it. Why not? Your layout looks professional without exerting too much time and effort. Last year, I delved deeper into using Bootstrap for my personal projects. Responsive layouts and eye-catching themes make designing the page satisfying. It has its drawbacks, such as being heavy for simple projects, but I used it anyway.

Runner ups: Blockchain and Bitcoin

CSS

Any starting developer knows should start with the three basic tools: HTML5, JS, and CSS. A prerequisite before branching out to larger frameworks. I have been exposed to CSS before, primarily for changing the appearance of my blog. Last year its different. I relearned CSS for actual development, including some reading on available preprocessors such as LESS and SASS. It has not been smooth but grasping the basic concepts behind it was very useful.

Runner up: Cordova and CSharp 7.0

DotNet Core

I am a DotNet guy since 2002. Almost all my projects were DotNet, particularly C# apps. Yes, I may have played with Mono on Linux for a short time but I always go back to Windows because of Visual Studio. Last year, I had the time to experience DotNet development outside the usual Windows environment. Actually most of my coding now is inside MacOS. I love Visual Studio for Mac and Visual Studio Code. Last year, I spent my time learning new DotNet WebApi, hosting project and managing projects in VisualStudio.com. Microsoft path is interesting, thats coming from a wannabe web developer who has come to embrace JavaScript.

Runner up: Docker

ES6

ECMAScript6, JavaScript with a punch! It contains the latest and greatest features JS developers have been craving for years. From arrows, template strings, spreads, classes, and more. I did not just study JavaScript, I studied ES6.


Functional Programming

After years of being in the background, Functional Programming has been making waves for all the right reasons. No, I did not have an specific project for this but it made me read lots and lots of articles regarding this paradigm. The good thing about it is I don’t have to chose a specific language to learn its concept. I am hoping that this year I could explore more of this concept an apply it to C#, JavaScript, Python, and (hopefully) Kotlin.

GitHub

Our favorite online repo! Last year, I got active. I created a couple of projects which I actively maintain.

HTML5

The language has definitely improved since my college days. I still remember buying an HTML Complete Guide book in year 2003 because I intended to a web developer then. As you know my story, I got tied with desktop development. But it is not too late to learn and last year was just a start.

Ionic

A few years ago, I studied Android development in Coursera. Unfortunately, there is something with Java that turns me off. This year, I enjoyed the learning experience with Angular and Ionic is the best route to continue my mobile development obsession. No projects yet, just trying to read articles about Ionic.

Runner up: Identity Server

JavaScript

A language every web developer must know. Prior to 2017, it is just a language to script animations and effects for my blog. But last year is different, I made a jump to learning the language for real :)


Kotlin

You probably have read my disappointment with Java, so when Google announced that Kotlin is now a first class language for Android, it was a breath of fresh air. The articles, reviews, and forums have suggested that it doesn’t disappoint!

Lamda Expression

They have been around for years but never have have I really see the use of them on regular programming task. Last year, I had the chance to work with the EntityFrameworkCore and lambda expressions were all over it. I had brief work with Python and they are there. ES6, they are there. If I adapt functional programming, they will be there!

MongoDB-Stitch

The idea of going serverless have been on my mind for some ideas I have. While I was studying MongoDB, I subscribed to their newsletter and received an email about their new product MongoDB Stitch. It was still in beta when i heard about so I decided, maybe I give it a test drive. I have created 2 web projects since then using it!

NodeJS

It seems like JavaScript has conquered every development space, from front-end, server side, and even desktop ( ElectronJS ). I have several server side projects before at work, all Microsoft related. Year 2017 was, however, a year I stepped out of my comfort zone. With all the buss around NodeJS, I jumped right in. Reading articles and tutorials, and using NPM. Perhaps 2018 is the year i do actual NodeJS projects.

Open Source

In the year 2007, I was part of the team that evaluated and planned for the IT infrastructure of the university where I was working, I even wrote an article about it. Ten years later, I find myself not able to contribute still to an open source project, neither have I published a project for open sourcing. That all changed last year, as I have used GitHub to publicly host my project repos.This made them open for any contributors as well as open for those who wants to use it. Human knowledge belongs to the world!


Python

Python ranked number 2 on my top list of programming languages I love. Just sitting below C3 and above JavaScript. I just love the simplicity, power, and flexibility. In reality, I do not have any production ready project in Python. I did some games and simple web app ( using BottlePY! ), thats about it. I doubt if I will ever be involved in a Python job, one thing is sure, however, everybody enjoy coding in Python!

Quitting

If there is one thing last year have taught me, aside from tech stuff, is to not quit. No matter how dire your situation is, you can never quit!

React

With my progression as a wannabe web developer, I came across several JS frameworks aimed to make life easier. How could I miss REACT! One, its famous and two, it is maintained by Facebook which makes it more famous. Thus, hours has also been devoted evaluating and reading about it. While I settled for Angular as the first framework to learn, React is next on my list. Several courses at Udemy has been scheduled!

Stack Overflow

Last year was the year I decided to at least be active in Stack Overflow. Known as the holy grail of modern day developers, the community is growing every year. What better way to engage yourself but to participate. Last year paved way for my first question posted as well my first answer on the site.

Test Driven Development

The joy of TDD. Unlucky me, my work does not believe in the concept. I do. So in 2017, I revisited TDD. All the DotNet code I have last year have at least a unit test included. I wrote a small write up on doing TDD in Python. Unluckily, I have not implemented TDD on my JS projects. But, hey! We have a whole year ahead to learn.


Universal Windows Platform

Being a desktop developer all my career, you might have thought why I still have to be interested with UWP. It should be automatic! I wish. I am a dinosaur developer stuck with old technology! No, there was no project created last year but I would certainly want to release something this 2018.

VueJS

The battle of JS frameworks and libraries rages on! Vue has been making waves. Some says its a thing of Vuety and that Vuetify is its answer to Angular Material. Yes, I’m in! No serious coding, for now. Just learning my way around the framework is enough for 2017.

Wordpress

My personal blog and all small blogs I have tried to come up are all in Blogger! But due to the popularity of Wordpress, I decided to start learning the platform. What better way to learn but to create one! This year would be the year of expanding and perhaps learn Wordpress coding. Hello, PHP.

Xamarin

Developers are so blessed with all the tools available. When my frustration with Java was building during my exploration of android development, I have always wished i can do the coding in C#. Xamarin was just starting back, then Microsoft came in made it the next big thing. With Microsoft Visual Studio supporting Xamarin, UWP, and Xamarin Forms development jus got more exciting.

Yeoman

During the first few months of 2017, the support for DotNet Core development in Visual Studio for Mac was a bit lacking. Even the scaffolding of DotNet Core is missing. Enter your reliable Yeoman! This helped me go on while waiting for the release of Visual Studio 2017.

Taken from the internet

ZZZZzzzzzzss

Finally! Last year, I got the much needed sleep for my body. We can always push ourselves to the limit but we must learn when to rest.

The new year just began and I believe we all have a list of things we would like to learn. Lets start 2018 with code cranking starting now!

Taken from the internet


Comments

Popular posts from this blog

Getting Started with Stateless : A Lightweight Workflow Library Alternative for .NET

Image Credit: https://www.pioneerrx.com A year ago, I was looking for a simple workflow manager for a project I was working. Its a medium sized application that involves tracking the state of assets in the system. Back in 2008, Microsoft (MS) introduced new technologies along with the release of Visual Studio 2008: Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), and  Windows Workflow Foundation (WF). Having worked in a company utilizing mostly MS products for development, my first option was to go with WF. After doing some time reading and studying the library, I paused and decided it was too complex for my requirement. Using WF would be an overkill and the fact that it has, a rather, steep learning curve, there has to be another option. My mind toyed with the idea of developing a simple workflow library myself. It would be a learning experience but it might end up consuming a lot of time. Why reinvent the wheel? So I started querying the ...

Hiding Unwanted Python Folders and Files in Visual Studio Code

Visual Studio Code is a universal editor and pretty good at it. However, the explorer view maybe cluttered with the automatically generated folders and files confusing developers. Python is no different. Below are example files and folders generated by Python. The __pycache__ folder and *.pyc files  are totally unnecessary to the developer. To hide these files from the explorer view, we need to edit the settings.json for VSCode. Add the folder and the files as shown below: Copy and paste the lines below : "**/*.pyc" : { "when" : "$(basename).py" }, "**/__pycache__" : true

Cyber-bullying : The "good", the bad and the ugly

Image courtesy of http://www.digitalesq.com/ Cyber-bullying is defined as  the willful and repeated use of cell phones, computers, and other electronic communication devices to harass and threaten others. With the advent of social media, the incidents has increased in numbers and the victims does not even know what is hitting them. For the past years, we have heard of  depressions and deaths because of this. Yet, there has never been a strong drive to increase public awareness and promote support groups to help victims outside of the schools.  Campaigns and programs has never gained mainstream presence enough to make an impact.