Category: Web Development
Build A Full Stack Movie Database With Golang, Angular, And NoSQL
With all the technologies and platforms available, it opens the door to infinite possibilities for development and further validates the need of being a full stack developer. There are many stacks in existence, but one of my personal favorites includes Golang, Angular, and NoSQL.
So how do you apply all these stack technologies towards a fully functional application? Let’s look at a possible usage scenario before we explore the technologies.
A problem I’ve found myself having recently is keeping track of all my movies. Can you believe I’ve purchased the same film multiple times by accident? From this spawned my need to keep a database of every movie I purchased. Using NoSQL, Angular, and the Go programming language, we can create such an application to keep track of what films we own and for what platforms.
Read MoreCreate A Real Time Chat App With Golang, Angular, And Websockets
I’ve been hearing a lot about websockets lately and how they can accomplish real time communication between applications and servers. They act as a compliment and possible alternative to RESTful APIs that have been around for significantly longer. With websockets you can do real time messaging for things like chat, communication with IoT, gaming, and a whole lot of other things that need instant communication between clients and the server.
A while back I had played around with websockets and Node.js using a library called Socket.io, but since I’ve been really getting into Golang I wanted to explore websockets using the Go programming language.
We’re going to check out how to create a chat application where the client is an Angular application and the server is a Golang application.
Read MoreCreate A URL Shortener With Golang And Couchbase NoSQL
Continuing down the road of Golang development I thought it would be a cool learning example to develop a URL shortener application similar to that of TinyURL or Bitly. I think these are great examples because not only does it teach you how to develop a RESTful API that uses a datasource, but it also challenges you to think critically when it comes to the algorithms.
Previously I had written about creating a URL shortener using my other favorite server-side technology, Node.js, but the languages are so different that it makes sense to try the same with the Go programming language. In this example we’re going to create an application that makes use of Golang, Couchbase, and a few other project dependencies.
Read MoreWhy RxJS Is The Hottest Way To Handle Async
Observables. Native To The Web Platform?
One of the common misconceptions in the web world is that RxJS is an “Angular thing”.
What most developers don’t realize is that Observables are on their way to becoming native to the web, and if you aren’t already using them to handle asynchrony, you are not adequately preparing yourself for the future.
The Best Way To Handle Asynchrony
RxJS allows you to solve hard problems with less code, promotes maintainability, readability, flexibility, and composability. These are just some of the reasons RxJS is the hottest way to handle async right now.
Learning how to handle asynchrony the reactive way instead of using promises and callbacks will also greatly reduce the probability that you are leaking resources. And because RxJS works with any framework (angular.js, react.js, ember.js, vue.js), node, and even without frameworks, it’s easy to future proof your applications and have confidence in using this technology.
Read MoreNavigating A Web Application With The Angular Router
I’ve been keeping up with Angular since the beta releases and if you have too you’ll know that navigation has changed about one hundred times between then and the now stable release. Navigation with the Angular Router component is a tricky subject, but understanding it is necessary for pretty much every quality Angular web application.
I wrote a now obsolete tutorial on how to navigate between Angular routes back when Angular was in beta. Since Angular is now stable, I thought it would be a good idea to share how to navigate between pages with the stable Angular Router component.
Read MoreUsing Couchbase Server In A Golang Web Application
Not too long ago I wrote an article regarding how to create a RESTful API using the Go programming language, but in it I only used mock data rather than an actual database. What happens if we want to use a database with Golang? What database, or more importantly, what kind of database should be used? Most APIs transfer data in JSON format, so it might make sense to store data in the same format. This means that a relational database might not make sense. Instead, NoSQL databases fit quite well when it comes to RESTful APIs. A popular NoSQL database that stores data in JSON format is the open source Couchbase Server.
We’re going to take a look at how to include Couchbase Server into our RESTful web application written in the Go programming language.
Read MoreCreate A Simple RESTful API With Golang
Most modern applications have separation between the backend and the frontend layers. The backend is typically a RESTful API and is critical part of full stack development. These APIs are generally further broken down into a collection of routes, often referred to as endpoints. Building applications like this is often very clean and maintainable in comparison to mashing everything into a single application.
I have been creating RESTful APIs with a variety of programming languages, for example Node.js and Java, but lately I’ve been doing a lot of research on the Go programming language. It is fast and very solid programming language that every seems to be talking about. Because of this it only made sense to see what it took to build a RESTful API with Go, often referred to as Golang.
We’re going to see what it takes to build a simple API that does basic CRUD operations using the Go programming language.
Read More