Pratik Upacharya is an innovative, high energy, full stack engineer, excellent problem solver with solid experience in building large scale and successful applications.
Nothing here yet.
No blogs yet.
3 types of testing and options in it 1) Performance Testing - Artillery.io , Jmeter ( And many more ) 2) Unit Testing - Mocha - Chai, Jasmine etc 3) End to End Testing - Selenium , Protractor ( Now can be used for both angular and non angular apps ) There are many other libraries and frameworks. It depends on use case.
I will hire a developer irrespective of his/her knowledge in Algorithms if he/she can solve given problem with the help of Internet with required output and time complexity he/she can explain solution to a 5 year old Note - Sometimes it depends on the project requirements as well. For project with strict deadline I will hire an expert who can solve that problem. For projects with loose deadlines, I will hire a guy who is not expert but have ability to solve problems with the help of Internet.
As per my experience with passport, it is working fine till date. Have not faced any issue. Would love to hear more about the problem that you are facing with passport. What IDE you are using for debugging. If you are working on small project then I would recommend you going with passport. As you will only have to worry about you business logic over user management. But yeah, if you are working on big project and you have time to re-implement the login wheel then you should implement everything from scratch. In this case you will have to manage sessions and all that stuff with passport handles. As you mentioned that you need help with JWT tokens. Check out this link, this guy explains everything you need to know about JWT. https://www.youtube.com/playlist?list=PLvZkOAgBYrsStrH9bCq6Jsx7CZJoOoDaH
Computer science is not about learning lots of programming languages or mastering one language for the rest of your life. It's about solving problems. One should be ready to learn whatever it takes to solve that problem. Different languages solve different problems. Some languages are created to solve particular problems, some problems can be solved by multiple languages. Now the question is, what problem you are trying to solve? Knowing a language and not using it to solve problems is not very useful. If you are working in front-end - Javascript If you working in back-end - ( Javascript, Python, Java, Ruby ...... etc) If you are working with database - ( SQL, CQL ... etc) If you are creating something which is close to metal, need high performance - C++ If you are working on machine learning - Python, R ... etc etc Tip - Select a problem which interests you. Research which language solves that problem. If there are multiple languages then check out advantages and disadvantage of those languages and which on suites your problem. After that learn that language, solve that problem, if problem requires deep knowledge about that language, then master that language. It is simple, not easy. One more thing, if you are master of X language and problem is requires Y language, your knowledge of X will be important because languages are syntactically different but conceptually most of the language are same. So concepts that you learned in X will be helpful for you to grasp Y.
In my personal projects I follow following branch names, this is just a sample. MAIN-DEV-WEB MAIN-DEV-REST MAIN-PROD-WEB MAIN-PROD-REST MAIN-DEV-WEB-FEATURENAME (This can be anything) MAIN-DEV-REST-FEATURENAME MAIN-PROD-WEB-HOTFIX MAIN-PROD-REST-HOTFIX This is just a sample, there are other names like integration branch, testing branch, versioning branch etc. This names depends upon the respective project.
I have worked with Django, Flask, Laravel 5, and Node.js. Based on my experience Node.js is your solution. It's easy, reliable, developer friendly, suitable for REST API. Due to its asynchronous nature, you don't have to worry about managing threads as we have to take that into consideration while working with other frameworks. Also, it is Javascript. So less learning curve if you are coming from JAVA background( As you mentioned that you are mobile developer, assuming that you must be creating native apps). I have created a basic boilerplate code for creating REST API's in Node.js using express and mongoose for MongoDB. As your database is postrgres you might have to use different ORM like sequelize or something else. Here are docs for sequelize: http://docs.sequelizejs.com/ I am not saying that it is the best way to create REST APIs. I am saying it is the easiest one I have used. Also, if your target is only to build REST API, then you can choose any of the following Node.js frameworks: Express Restify Hapi My personal preference is Express .
First of all rethink was shut down in 2016, now they are back. They have joined The Linux foundation. Ref- https://www.rethinkdb.com/blog/rethinkdb-joins-linux-foundation/ Second - Docs to start using mongodb with nodejs. Go with mongoose orm. http://mongoosejs.com/docs/guide.html Resources about mongodb - https://resources.mongodb.com/getting-started-with-mongodb?jmp=nav&_ga=2.231153055.1434056842.1494866979-1244335060.1494866979 Mongodb official documentation - https://docs.mongodb.com/ Third - Yes they are very easy to setup, at initial stage you can select third party hosting provide if you don't want to additional overhead of mongodb administration. Two solutions - 1) https://mlab.com/ ( Provide a free mongo instance with 512RAM) 2) https://www.mongodb.com/cloud/atlas See, you still have not mentioned what problem you are trying to solve. Without mentioning you directly jumping between nosql db's. Here are some use cases using mongodb https://docs.mongodb.com/ecosystem/use-cases/