I have recently re-installed Windows 10 on my laptop and came across an odd error with Google Chrome. Whenever I tried to use chrome I will randomly get ERR_CONNECTION_TIMED_OUT error.
I tried numerous things thinking I was having troubles with my internet connection. But later I observed that I can use Firefox without any issue when Chrome having this problem. I googled and tried clearing up all the browser data, flushing DNS, etc.. but issue was not fixed. Later I found the solution.
It was associated with the “Cryptographic Services” on the windows services. I have linked my user account with Microsoft account. I found that It was used in the Services window to start “Cryptographic Service”. Follow below steps to fix this issue.
Go to services and select “Cryptographic Services”
Stop the service and go to properties using RMB option.
Go to “Log On” tab and select “Local System account” option and also check on “Allow service to interact with desktop”
Press “Ok” and restart the service.
This will fix the “ERR_CONNECTION_TIMED_OUT” issue.
Traversy Media is one of my favourite YouTube channels. His tutorials are concise and clearly explained. He have recently published a Web Development In 2019 – A Practical Guide video and I decided to make a roadmap out of it to follow along and improve my skills. This document is hosted on my Github and embedded below for reference.
Vanilla JavaScript – Start learning JavaScript without any framework
Data types, functions, conditionals, loops, operators DOM manipulation and events JSON Fetch API ES6 Arrow functions, Promises, async/await, destructuring
HTML/CSS Framework – HTML/CSS frameworks are becoming bit less relevant but I would suggest learning one. They can make your life much easier and great for prototyping
Git & Tooling – Git is absolutely necessary for all web developers. Here are some othe tooling suggestions
Basic Command Line – Use for so much including these tools Git – Version Control NPM or Yarn – Installing Packages Webpack or Parcel – module bundling Gulp or Grunt – task runners Editor Extensions – ESLint, Prettier, Live Server etc
Front-end Framework – It is becoming necessity to learn a JS front-end framework
React – Most popular in the industry Vue – Easy to use and really gaining traction Angular – Fading a Bit – Used in enterprise Very popular in the industry More interactive & interesting UIs Component & modular front end code Good for teams
CMS – Content management systems allow for quick development and give your clients the ability to update their content. May not be a bad idea to pick one up. Great for freelancers.
PHP Based – WordPress, Drupal JS Based – Ghost, Keystone Python Based – Mezzazine .NET – Piranha, Orchard CMS
DevOps, Deployment – Learning languages and frameworks is one thing, setting up environments, testing and deployment is another
Deployment – Linux, SSH, Git, Server Software (Nginx, Apache) Platforms – Digital Ocean, AWS, Heroku, Azure Virtualization – Docker, Vagrant Testing – Unit, Integration, Functional, System
GraphQL & Apollo – GraphQL is a revolutionary new way to think about APIs. Query language is much less rigid that standard REST.
Ask for only what you want Front & back end can collaborate more smoothly Writing queries are very easy and similar to JSON Apollo is a client to make requests to a GraphQL server Used with the Gatsby static site generator
Serverless Architecture – Eliminate the need for creating and managing your own server
Used 3rd party services to execute Serverless Functions (Faas) Examples are AWS, Netlify & Firebase Popular with Gatsby static sites Serverless framework – toolkit for building serverless apps
AI & Machine Learning – AI & ML have been huge in almost every area of programming & technology including web development
Machine learning can allow web apps to adapt over time AI has a long way to go but I suspect we will see more of it in web development Used heavily in Python but we also have JS libraries like Tensorflow.js and Brain.js
Blockchain Technology – Companies are using blockchain for digital transactions in order to make them more efficient and secure.
Solidity – Language for implementing contracts Mist – Used for Storing Ethereum, sending transactions and contracts Coinbase API – Blockchain des can easily build apps and integrate Bitcoin
Progressive Web Apps – PWA are regular web apps but give the user a native app experience in terms of layout and functionality
Responsive to fit any form factor Service workers for offline availability App-like interactions HTTPS Reliable, Fast & Engaging
Web Assembly – Assembly-like binary format for code that can be executed by the web browsers. Can be generated from higher level languages like C/C++ *& Rust.
Faster than JavaScript Secure – Enforces same origin & security policies in the browser Open & debuggable
With the dawn of new year I decided to self-learn full-stack technologies. I started from Node JS. As usual I begin at the documentation and read several articles on medium, freecodecamp and watched lots of videos tutorials. All the tutorials were either on Linux or Mac and shown the power of handy utility NVM – Node Version Manager.
It’s a clever idea that allow us having several versions on Node installed and use the selected node version for our project. I wanted to have same utility on my Windows machine and after quick google search I came across same utility implementation on Go language for windows by Corey. Try it out and It really make developers life easy.
Here is the cheat sheet of commands I found helpful.
nvm arch
Show if node is running in 32 or 64 bit mode.
nvm install <version> [arch]
The version can be a node.js version or “latest” for the latest stable version.
Optionally specify whether to install the 32 or 64 bit version (defaults to system arch).
Set [arch] to “all” to install 32 AND 64 bit versions.
Add –insecure to the end of this command to bypass SSL validation of the remote download server.
nvm list [available]
List the node.js installations. Type “available” at the end to see what can be installed. Aliased as ls.
nvm on
Enable node.js version management.
nvm off
Disable node.js version management.
nvm proxy [url]
Set a proxy to use for downloads. Leave [url] blank to see the current proxy. Set [url] to “none” to remove the proxy.
nvm node_mirror [url]
Set the node mirror. Defaults to https://nodejs.org/dist/. Leave [url] blank to use default url.
2019 arrived and I decided to start blogging and hope to continue this practice. As a new year resolution I have finally decided to form a coding habit and dive into world of JavaScript. I have started #100DaysOfCode challenge and forcing myself to code at least 1 hour every day on personal projects to make coding a daily habit. 🙂
To enforce the challenge I looked at Project Euler and decided to solve a problem everyday. I will post my solutions on the GitHub and if the challenge is exciting and worth sharing I will write up a blog post on how I solved it.