How do you feel about graphs? Graphs are all around us. The road network whose one arm probably passes from the front of your porch is an example. Your electric company’s grid network is as well. The neurons working in unison to keep the actions performed by our bodies coordinated in the form of the neural network are another example.
So, a very natural question comes to mind. What exactly are graphs, anyway? Why are they even needed? How do they make data visualization a piece of cake? These are the questions which will be touched on briefly in this article, along with the introduction to databases, their types, and a brief introduction to Neo4j.
As with many hard problems, humanity has come up with a number of solutions and models for concurrent computations that emphasize different parts of the problems, as well as making different choices for the computational tradeoffs that occur when we talk about achieving parallelism.
In this post, I’d like to examine code that implements a concurrent solution to the same problem and talk about what’s good about the given approach, what’s are some potential drawbacks, and what pitfalls may lay in wait for you.
How is the development of a project different to the development of a product? In both cases, we’re trying to develop a software application, right? So shouldn’t it be the same?
Now, I wouldn’t call myself an expert in product or project development, but even with limited experience it’s easy to understand that even the most basic requirements, like customer profile and pricing, should be necessarily different. In this post, I’d like to cover the differences between a project and a product and how we can adapt our mindsets to ensure our success.
For us Java developers, Docker helps isolate our apps in a clean environment, so the unpredictability of “works on my machine” is a little less irritating. Isolation is important because it reduces the complexity of the software environment we’re using. Plus, to benefit from using Docker you don’t have to get into the world of containers and start deploying your application to thousands nodes. Just the isolation from your developer’s machine is a big plus.
I wanted to play with Spring Social, which is a grouping of nice integrations that Spring provides to let you easily set up integrations with social sites. There is a bit of fuss on the social networking sites when it comes to providing third-party access to apps/accounts, but we’ll visit that later.
In this post, I’ll show how I put my application together, including the guides I used along the way to prevent the need to make any living sacrifices to the XML gods…