Things I HATE 😡 about Javascript

Hello World!

Don’t get me wrong I Love Javascript even a wrote an entire blog about it, However there javascript is not a perfect language like any other language in this planet.

At the time of writing this blog I have been developing javascript since last 18 months, yep i that is not enough time to get sufficient knowledge to write a blog like this but I am planning to keep on updating with time.

 

ASYNC:

I have been coding in python from last year of my engineering, I loved it because of it’s dynamic typing and I jumped into javascript realm for the same reason. I loved it till I came across ASYNC programming in javascript, which left me confused at so many level(yep I know as JS has single thread it’s is one of the fundamental feature which makes sure multiple processes can at a any given point of time.) It would have been great if ASNYC part in JS is dealt in a way that it’s more intuitive to write async code. Thanks to async and await syntactic sugar it’s  not that of a deal anymore.

 

HOISTING:

Understanding how hoisting works was one of the eye opening moment for me, suddenly lot of things started making sense to me about the me. I am still not very sure why JS needs to have hoisting in first place. I understood how it works but why behind it still not clear to me. Most likely I will remove this point from the list after understanding the purpose behind it.

 

DEBUGGING(Frontend):

I have not done enough backend coding to express my opinion on how it’s like to do debugging in node, What I done is frontend and due to different browser engine implements  certain feature of javascript differently it’s very hard to get to debug an issue. Apart from it, if you are not using strict mode in javascript sometime it’s almost impossible to track back an silent bug which exist in your code. Tools have been come a long way in recent times which made debugging error and it’s relatively straightforward to debug JS bugs now. But without proper tooling it’s almost impossible to catch the bug easily.

My learning journey has just began. This list will change with time as my understanding of javascript get better with time.

Thanks for spending your time on this post. Feel free to share your experience with javascript and the bits you don’t like as much.

 

Seen you in next one

Signing off

-Karan

 

Things I ❤️ about JS

Hello World!

Till end of 2016, I never took javascript seriously. I use to think it’s only used for doing form validation and basic DOM manipulation, Then I came across Angular JS and from that point onward my out look towards JS changed forever! My initial expression was like

‘Hmm so Javascript can do more than I thought!’

Since you are here to read about the things I love about JS. I am listing down the program feature which I absolutely love. This is very subjective and your opinion might defer with mine and that’s a good thing!  Here we go 🏃🏼‍♂️(please someone tell me how to reverse this(🏃🏼‍♂️) emoji 😂).

  1. Lose typing:
    1. After spending quite lot of time with python, One of the major similarity which I found between JS and Python was that they both are loosely typed language which means  interpreter dynamically assign the type to variable which is such a blessing if one use it properly.
  2. Less Steep Learning Curve:
    1. Javascript is one of the very few languages which is very easy to learn but very hard to master. This is what makes it very easy for new developer to start with JS pretty quickly!
  3. Isomorphic Javascript: 
    1. Javascript is only language which can be used for client side and server side coding which if you think about it’s pretty neat! Isomorphic app have lot of advantages like faster rendering time and on top of that because you have entire stack in one language context switch between backend and frontend code gets easier.
  4. ES6:
    1. I we should give ES6 a lot of credit to bring lot of stability Javascript language. Frontend development is lot less of a hassle after wide adoption of the standard.
  5. React/Vue:
    1. I have never imagined that jQuery would not be required in future anymore. Infect jQuery is how I learned javascript coding. Existence of frontend framework like react , vue and the entire eco system around is a testimonial itself that how quick JS landscape is changing.

Hmm.. seems like I am running out of point right now. I will be keep on updating  this post as and when I will come across something I love about JS. Thanks for reading, Hope it helps someway 😇

 

Seen you in next one

Signing off

-Karan

Building an Expo APP

Hello World!

If you know JS and React/React Native than this blog is for you, If you don’t no issue here are some great resource to learn.

javascript: JDKJS &  Freecodecamp 

React/React Native: Egghead React Tutorial   

I have started working on fooodie.store app some time back.  You can download it from playstore , It would be completely wrong to say that I have build this app all by myself. Significant part was build by Supi without has Redux wizardry it was impossible to complete this app.

WHY EXPO?

Coming back to topic, We picked up Expo for this task, If you are thinking why expo? it’s a topic for a different blog itself, inshort following are the feature which expo makes so appealing for some one who is starting react native development

  1. Push notification
  2. Expo app for dev
  3. Native file support
  4. Native graphics
  5. Social Auth

There are few more, if you are intrested you may continue reading in expo website

 

HOW TO SETUP EXPO?

Up and running with expo is really simple and fast(make sure you have node installed already!).

you have to install expo cli (npm install expo-cli --global) in your system and expo client app your android/ios phone. once this is done. all you have to do is run following command(expo cli will do the hard work for you):

expo init my-new-project

above command will create new project with all bolierplate in same location where you have ran this command.

and you are done!

 

Fireup your code editor and start fiddling around with app.js file to see changes you can either you xcode iphone emulator(fastest option in my experience) or use Expo client app on your device, Just make you are in same network as your system for faster experience.

 

There are lot more to this, But I don’t remember all the details right now. Hope this helps. I will keep this post updated as and when I get recollect more information about setting up expo.

Seen you in next one

Signing off

-Karan