Choosing a software development company to tackle your project is a bit like recruiting and hiring a new employee. The challenge is not simply finding a software developer. It's about finding the one that's the best fit for you, your project and your timetable.
When choosing a firm to develop your custom software, it's important to know who is on the team.
Software development is a highly technical field where the skill, expertise, and reliability of your team will determine the success of your project. This is why it is so important that you are selecting the team that matches and blends well with you and how you work.
Remembering that our biggest concern is exhaustion of a shared resource, it's clear that if we're not able to increase the amount of resources available (via hardware), then we need to consider making more efficient use of the resources that we do have.
Everyone is pretty familiar with the concept of building an entire website using the WordPress CMS. But what if you already have a fully developed website that you want to add CMS functionality to without rewriting and restructuring the entire thing? WordPress is a powerful tool that can allow you to do just that.
The prettiest, most featureful site or application in the world is worthless if it's not usable. Users are a pretty impatient lot -- if things don't work quickly and responsively, they will become impatient. So ensuring that your infrastructure is as performant as possible is a huge issue. As projects get bigger and userbases grow, things will inevitably slow down and your performance will suffer.
One of the biggest buzzwords in any industry today is “social media.” But it doesn't have to be just a buzzword – with a solid social media strategy, you can leverage your customer base to help promote your brand and your products.
Hotkeys are all but forgotten by many modern productivity suite users, but they are still incredibly valuable for improving a user's speed, reaction, and overall performance.
While working on a recent project, I had a client request database needs where a view was the most optimal solution. In this article, I will go over 'why' and 'when' to use a view in SQL.
In my last article, I wrote about what Continuous Delivery is and it's advantages and disadvantages. This time I'll be discussing how the Continuous Delivery process can co-exist with Agile methodologies.
Interfacing with relational databases can be tricky. To help manage this task, a number of ORM frameworks are available to encapsulate the specifics of managing your database. This can make development and maintenance of your data-driven application much easier.
One of the vulnerabilities that we could potentially counter involves the prime number used in the Diffie Hellman key exchange.
WebSockets can be used to PUSH realtime data to your clients and are the future of web application development.
Configuring backups is important. Here is how rsync can be used to perform backups.
The complexity of today's software has changed the way we look at delivering it. The demand for constant updates has forced companies to find faster and more efficient ways to deploy tested and working versions of software. Continuous Delivery allows for just that.
When designing and developing a system that will be accessed via the web, mobile app, and possibly even embedded device, it's important to consider how best to accomodate the shared aspects of each system. Developing an API-based system can help you make the most of your system and ensure it's able to grow well into the future.
GraphQL provides a common interface between the client and the server for simpler querying of data and also manipulating data using the notion of mutation queries. It has evolved into it's own architectural style as a direct replacement for REST.
Ensure that your data is properly backed up! This tutorial will walk you through MySQL full and incremental backups.
More and more people today are using their smartphones or tablets as a primary way of interacting with the world. Are you keeping them happy?
A short summary on some of the ways we work to keep clients informed on project progress and keep them involved in the development process.
When HTML5 was introduced a few years ago, two new graphic elements were revealed - Canvas and SVG. Although SVG has been supported before, HTML5 has introduced the SVG tag as a container for SVG graphics. What is so great about these? Well, for starters they are capable of advanced and efficient image editing techniques while being completely library independent.
Backing up your SQL Server databases is one of the most important steps in maintaining data integrity in case of disaster. Here is how you can ensure your backups are made correctly.
Structured Data Content (SDC) is the result of collaboration between all the major players in the search engine market (Google, Bing, Yahoo, etc.). The goal of this is to make it easier for search engine crawlers to understand your websites content.
It's been said that "the safest computer is one that isn't connected to the Internet." There's a certain truth to that statement; however, in today's ever-more-online world, it's a pretty pointless platitude. And when you're talking about the Internet of Things, it's a contradiction in terms. By definition, your device must be connected to the world to do its job properly – and that means security is a very real consideration.
The 'Freemium' business model in the software industry has been around in different forms since the 1980's. When software as a service (SaaS) took off, different 'freemium' strategies were utilized to help achieve the model's main goal - attract as many users as possible by giving away certain aspects of the software while monetizing on other 'premium' aspects.
The decision on which technology to use can be a tricky one. In most cases we’ve left this decision up to our customers. If they want something done quickly and on a tight budget we would typically use WebForms. It’s been around a long time and we have a large staff of developers well versed in the technology. In other cases a customer may specifically request their project be developed using MVC. I thought it might be interesting to do a little more research and see what the rest of the internet’s thoughts are on these two technologies. As you can imagine it only take a few minutes of searching to find thousands of reasons why one is better or worse than the other.
PhantomJS utilized a headless (no UI) browser to render content that can then be converted to PDF.
In software development, issue tracking is sometimes called 'bug tracking'. This term does not fully encompass its entire utility, however. Applied correctly, issue tracking software can do more than just report 'bugs' in a testing phase of development.
Several cost-effective solutions are available to connect your older hardware to the Internet of Things.
Analysis of parallel processing performance with benchmarking results.
Evaluating database backup strategies can be complex. This guide can help plan your database backups.
In the early eras of computing, even the most simple of devices required rooms' worth of space, infrastructure, and operators. But as computing technology has gotten smaller and cheaper, the devices around us have been able to leverage those advances in a lot of different ways.
If you are going to choose a content management system as the base for your new project we have you covered!
Selecting where to host your website or application can be a challenge. This guide can help your decision-making process.
When evaluating a software development company, one thing to look at is their use of a business process improvement system such as Capability Maturity Model Integration model (CMMI.)
A bottleneck occurs at a process or component in an application that has the lowest throughput, therefore limiting the overall performance of an application. Identifying and correcting bottlenecks is crucial to maintaining a well performing application.
Analysis of parallel processing performance with benchmarking results.
Automated Penetration Testing is a way of testing a computer system, software application, or a web application to potentially reveal any vulnerabilities in an application.
When developing software for clients, we use subversion to safeguard intellectual property, track the evolution of a software product, efficiently handle multi-developer collaboration, and aid us with our continuous integration development cycle.
Smart phones and tablets are here. They went from becoming ubiquitous devices to, well, ubiquitous devices. Sales of smart phones passed the sales of “dumb” phones in 2011, within the US, and in 2013, worldwide. This trend has encouraged many software developers to jump into the mobile platform. And it means the handheld space faces an increasingly competitive opportunity for developers.
For the last decade U.S. Corporations have rushed to move Information Technology. and Software Development operations offshore in an effort to presumably 'shore up' their organization's bottom line and save dollars through cheaper costs via overseas development centers in India, China, Vietnam and the Philippines.
An increasingly more popular, but not necessarily new, paradigm for web application development is the single page application (SPA). This applications offer many opportunities to increase performance and availability while reducing hosting costs.
When developing software, there are two critical goals: first, that the code does what it's supposed to do; and second, that it does so with as few bugs as possible. One of the best ways to help ensure that these goals are met is to maintain a comprehensive suite of automated functional tests.
Each problem is its own domain of security, but the core concept is the same: security procedures must be designed into the system from the beginning. From an API to network system configuration, attempting to add security after the fact tends to involve much more work than proper planning during the implementation phase.
If we can reap all the benefits of a fast development environment without worrying about setup, maintenance, and support then why isn't everyone ditching their desktop IDEs right now? Well, it seems few developers can find a valid argument for not at least giving cloud IDEs a try.
There is a lot of hype building around mobile devices and applications. In this article, we show you which questions you should be asking and how you should be going about getting those answers.
It seems every day I get a call from a businessman about a disaster he had just experienced with offshore development work. Issues with communication, budget overruns, not getting what he wants, not delivering on promises, etc.