Planet Telex is a full service software design and development company. Whether that software is for the web, a mobile or tablet device, the desktop, or part of an enterprise ecosystem, we have the expertise to get the project done well, on time, and within budget.
We call ourselves a full service development shop because we can design and develop a project from scratch, work with your internal team on a single aspect of a project, and everything in between. Graphic design, user experience (UX), architecture, programming, and project management: Planet Telex can fill in your team where needed, or we can be your one-stop shop for everything from requirements through deployment.
We also offer design services ranging from logo creation to software interface design. Planet Telex has worked with large clients with strict brand regulations as well as startups that need branding assistance. In each case our design team produces clean, usable, intuitive, and high-impact designs and graphics that delight and impress customers and end-users alike.
Read more about our services below:
Software development is a broad term encompassing design, architecture, programming, frameworks, methodologies, and management practices. Our team has experience with all the major technologies and processes in use today.
Unlike some companies who try to fit your project into their set of preferred technologies, Planet Telex uses the best technology for any given problem. This means that we'll find a solution that fits your existing infrastructure and operational workflow. We make software conform to you, not the other way around.
In addition to our technical expertise, we also have expertise in software project management using popular methodologies like Agile and Scrumand have used a wide variety of project management software products. Internally, Planet Telex uses the Atlassian suite of products which includes Jira, Confluence, FishEye, and Bamboo. Our designers use the latest Adobe products, and our developers use the most powerful IDEs on the market like Visual Studio, WebStorm, IntelliJ IDEA and Eclipse.
What it comes down to is this: Planet Telex uses a wide array of powerful tools and software to insure you get the highest quality software in the shortest time possible. It means that we don't waste your time or your money. It means that our expert team can focus on you and your project, not operational overhead.
Whether it is internal to your company, or a public site on the Internet, using web infrastructure for application development has many advantages, and Planet Telex builds many web applications, large and small. Unlike some companies which often push their preferred technology on a client, we find the best technological solution for you and your company. Our team has experience with Microsoft .NET, NodeJS, Ruby on Rails, Java, and PHP - all the major server-side languages and frameworks.
Sometimes all you need is a basic website with standard functionality. That is when we usually use a modern content management system (CMS) like WordPress or Orchard CMS. Planet Telex can customize these systems extensively if needed and will build custom modules and plugins for them if the marketplace does not already provide what you need.
When an application needs to be a completely custom solution to meet your business needs, Planet Telex excels in architecting and building them using technologies like AngularJS, Ruby on Rails, ASP.NET MVC, Groovy and Grails. Custom sites built this way often require custom administration components. Sometimes we build these from scratch, other times we leverage tools like Microsoft's Dynamic Data or the scaffolding code native to the framework we are using to create administration components for custom systems quickly and at a low cost.
The fastest growing market segment in computer hardware is mobile devices and tablets. The iPhone and iPad revolutionized how people interact with machines, and those devices along with Android based smartphones and tablets are gaining new users every day. Companies that wish to stay relevant cannot afford to ignore these devices.
Our team at Planet Telex has experience designing and building apps for both Apple's iOS, which powers the iPhone and iPad, as well as Google's Android platform. For maximum market effectiveness, it is common to build the same app on each platform, and we have the experience to streamline development for these two different device operating systems which saves our client's money. Our own app, Beers Around Me, is available on both platforms.
In addition to native apps, websites should also be optimized for these devices to provide a smooth and professional experience. Modern browser technologies like HTML5, CSS3, and jQuery mean that your website can provide a rich interactive experience on mobile devices, customized to the device it is being viewed on. This is called responsive web design.
Planet Telex has a lot of experience developing touch based interfaces, not only on mobile devices, but also on large screen touch devices. What makes mobile devices interesting is their incorporation of features like cameras, GPS, and accelerometers. These input mechanisms provide us the opportunity to design unique and engaging software interfaces. We have particular expertise with iBeacons, which is a solution to allow for position-based programming when GPS is not available, like inside a large retail store.
Google's Android platform powers many mobile and tablet devices, making it an ideal platform to release your app on if you would like interoperability with as many devices as possible. Unlike Apple’s closed ecosystem, the Android marketplace is more open and has fewer barriers to entry, however every device has its different quirks making testing and QA in the space difficult. Planet Telex has the expertise to support the devices you need supported, and also when to know that supporting a particular device is a losing proposition.
Its openness combined with innovative hardware features like cameras, GPS systems, accelerometers, and even projectors create a world of opportunities. We have particular experience using the iBeacon specification for making geographically aware applications even when you are indoors and precise GPS is not available.
Apple's iPhone revolutionized the smartphone experience and continues to be the dominant platform in that market, boasting the largest marketplace and number of users. Similarly the iPad has made tablet computers usable and desirable to the general public, effectively creating a new consumer category of computer. Reach these new consumers with your own app for iPhone, iPad, or both. Planet Telex can create the clean and elegant iOS app you deserve and the Apple marketplace has come to expect.
When designing apps for the Apple marketplace, it is important to hire a company with experience since Apple must approve your app prior to its release if it’s released publicly. Our staff's experience in designing and building apps that conform to Apple's guidelines will save you time and money.
Geographic positioning is an important aspect of many mobile applications. The problem is that GPS need a line of sight to a satellite so it will not work indoors or even in dense urban areas with tall buildings. Using the cell phone towers, a device can still have a rough idea of your position, but not with the precision needed for most apps. This is where iBeacons come in. iBeacons are small Bluetooth transmitters that can be set up in a space to allow an application to know a device's position.
Planet Telex has implemented iBeacon solutions for both Android and iOS and are familiar with the particular challenges they present, both technically and logistically. Successful integration of iBeacon technology can transform a retail or event smartphone experience with applications that seem to work almost magically. Implementing the common use case of a check-in can help drive consumers to locations and increase sales. Because the iBeacon specification is relatively young, overall smartphone compatibility is still catching up, but we predict that more and more retails will be implementing iBeacon solutions in the coming decade in conjunction with more devices supporting it.
Hypertext markup language (HTML) has provided the basis for all of web publishing since the web first gained public awareness. Cascading Style Sheets (CSS) provided a much needed advancement in separating the styling of a document from its content. Together they fuel almost every web based interface on the Internet. HTML5 and CSS3 represent the latest advancements and standards for these technologies.
In addition to native support of rich media and a graphics engine, HTML5 provides the basis for a more semantic web, on which more powerful and intelligent applications can be built. Some have even dubbed the widespread adoption of HTML5 “web 3.0” to emphasize what a drastic improvement over the current state of our “web 2.0” that would be.
Planet Telex has authored several jQuery and jQuery UI plugins, all available on GitHub. Chief among them is our jQuery UI Coverflow widget, which provides an iTunes-like coverflow interface. Our other jQuery plugins are a textmeter for counting down characters left in a text area, a linkifier that identifies links in text and adds the HTML tags, and animage mapper that makes creating HTML image maps easy (for web developers).
Planet Telex has extensive background and expertise in Microsoft .NET development. Many of our team developed on Microsoft platforms even prior to the existence of .NET. Consequently, we have experience developing for all versions of the platform and have been working with it throughout its evolution into the powerful and robust framework that it is today.
Although we've used Visual Basic when required,C# is our preferred language. From the beginning it was an elegant language, but as it added features like generics, dynamic typing, and the incomparable LINQ framework it became one of the most robust and versatile languages available.
While the majority of our projects are web-based and use technologies like ASP.NET MVC and Orchard CMS, we also have experience developing Windows desktop applications using Windows Presentation Foundation (WPF) and PRISM.
Planet Telex has been developing web applications on Microsoft's ASP.NET framework for as long as it has existed. This began with their “Web Forms” paradigm which we used a lot before the advent of ASP.NET MVC. Starting with ASP.NET MVC1, we have kept up with the pace of Microsoft’s development of the platform.
While Microsoft didn’t invent the model-view-controller (MVC) framework or pattern, they have produced an implementation that is first class, taking successful aspects of pre-existing MVC systems that work well and blending them together with the goodness of the .NET framework.
ASP.NET MVC is a vast improvement over Web Forms in that it embraces the fundamental technologies and protocols that run the web rather than trying to obscure them. The result is a more elegant application architecture that is easier to design, maintain, and separate. Since ASP.NET MVC views can work side by side with older Web Forms, it can be incrementally applied to existing ASP.NET applications, making it the clear choice when deciding on Microsoft web platforms.
When building custom web applications, data is usually stored in tables in a database. A typical web application will have a public interface that is (rightly) the main focus, but the necessity for administrative access is inescapable. Since administrative functionality usually exceeds that of the public functionality in both complexity and number of operations, the cost of a custom administration system can easily double the costs of the non-administrative components.
This extra cost is one that many startups, small businesses, and organizations do not have the budget for. Enter Microsoft's Dynamic Data. Dynamic Data automatically generates a web-based administration system for a custom database schema, allowing for programmatic hooks and stylesheet customization. This can reduce costs of an administration system by up to 90%.
It is true that a custom built administration system can be specifically designed and is likely to be more elegant and usable than Dynamic Data. However Dynamic Data can get the job done in a fraction of the cost. For the budget conscious, it can be a lifesaver.
In today's web-connected, cloud-provided environment its easy to forget that there is still a place for native Windows applications. There are many reasons a Windows application could be the best solution, chief among them are that native applications enjoy access to machine hardware like graphics processors, hard drives, and peripherals. Windows applications can of course, still connect to Internet based resources and APIs to create truly integrated user experiences. Dropbox and Evernote offer Windows applications in addition to their web application for many of these reasons.
Planet Telex has built several robust WPF applications for our clients. Enhancing the framework with the PRISM libraries and patterns as well as control sets by Telerik and ComponentOne we've built modular, extensible Windows applications. In fact, we've done it enough times to create a WPF Bootstrap that incorporates PRISM, Telerik docking and menus, and an architecture for many style variations (skinning) into a simple ready-to-go package that represents an approximate 80 man-hour jump start on a project using those technologies.
Although not in our bootstrap, we must mention the incomparable SciChart. Using their product we could plot a billion (!) desampled points on an XY chart with no interface freezing and the ability to zoom/pan even while rendering- something we needed to do for a project, and an example of leveraging the power of a native application over a web interface.
Its easy to forget how overcomplicated web application frameworks were until Ruby on Rails came along. Bringing the MVC pattern to mass usage, Ruby on Rails forced a sea change in web frameworks with Microsoft and Java based systems quickly copying it in their own way.
Ruby on Rails continues to be a favorite framework for both web applications and APIs by both the larger development community as well as Planet Telex. We're using Ruby on Rails with a Postgres database to power the API for Beers Around Me.
For those who want access to Java libraries, the conveniences of a scripting language like Ruby or PHP, and a model-view-controller (MVC) paradigm for web applications, Grails is the application framework for you. It's built upon the Spring MVC Framework using the Groovy programming language, a dynamic language for the Java platform. Although it is very similar to Java, Groovy can be considerably more concise and elegant, making it a great choice for rapid development on the Java platform.
Grails is the Java based equivalent of Ruby on Rails. The name is in fact derived from “Groovy on Rails” to indicate its similarity to Ruby on Rails. This was changed to Grails upon request by the creator of Ruby on Rails. It offers the productivity that Ruby on Rails does, only for the Java runtime environment.
Java's cross-platform availability, extensive history of frameworks, and wealth of tools make it one of the dominant forces in the enterprise. The innovations that happen in the Java space have certainly been the guiding beacon for developments in younger platforms. Since Sun opened the Java source code in 2006, it has been readily adopted by the community and was chosen as the basis of the Android mobile platform.
We have experience with the Java platform as well as with popular frameworks like Spring, which provide the latest rapid application development tools without sacrificing solid architecture. With these frameworks, Planet Telex uses modern development practices like object relational mapping (ORM), dependency injection (DI), and aspect-oriented programming (AOP) to quickly create robust, well architected applications.
Spring is a popular open source application framework for the Java platform. Its modules enable the most state-of-the-art programming constructs like inversion of control, aspect-orientation, object-relational mapping, and transaction management in addition to common tasks like messaging and logging.
Spring MVC implements the popular model-view-controller pattern with other Spring modules. By using the Spring Roo tool, Spring based Java applications can be built even more rapidly and enable easy integration with deployment tools like Apache Maven.
With a large ecosystem and widespread popularity, PHP is a mainstay on the Internet. The free and open licencing of the language helped it ascend to this position at a time when there were fewer competing options. To be honest, Ruby on Rails is a better choice if building something custom from scratch, but PHP still plays a viable role in the overall ecosystem.
Many of the most popular content management systems (CMS) are written in PHP, most notably WordPress, which has become the largest blogging and small website platform in the world. Planet Telex does most of our PHP work in this context these days, although in the past we've built robust custom PHP applications.
Data storage is a pervasive need by nearly all software systems. At Planet Telex we routinely use Microsoft SQL Server and MySQL, PostgreSQL, and SQLite for SQL based solutions. We also have experience with "no-SQL" and document databases such as MongoDB and Raven DB.
In addition to basic database usage, we have implemented enterprise-level enterprise tasks such as replication and migration. We have engineering databases that both scale and perform well.
PostGIS is an open source, freely available, and fairly OGC compliant spatial database extender for PostgreSQL. In a nutshell, it provides teh ability to do geographic calculations and analysis at the database level for maximum efficiency. Planet Telex has used this for client project as well as our Beers Around Me mobile app.
Planet Telex has experience designing logos, websites, software interfaces, and user experiences. When it comes to software and websites, we pay a lot of attention to the user interface (UI) because that is often the more important aspect. Our development staff works with our design team to craft the best user experience (UX) possible, something that extends beyond design and integrates technical benchmarks like load times.
Our design process starts with you, your vision, and your goals. Our designers take into account your preferences, industry norms, and their expertise to create designs that not only look good, but fulfill the goals you have prioritized. While we value striking graphics, we never forget the purpose of our design work and that real money and customers can be lost or gained by the design decisions we make.
Not only have we designed many web pages and keyboard-and-mouse based software interfaces, but we've also designedtouch-based interfaces for mobile, tablet and even larger devices. It is important for a designer to respect the medium they are designing for and to know the input and output capabilities of that medium. The designers at Planet Telex keep up with all the latest developments in human-computer interfaces so they can engineer the smoothest and cleanest experience on any given medium.
One part psychology, one part artistry, and one part engineering, logo design is perhaps the most challenging graphic design challenge there is. One simple graphic is supposed to be your visual ambassador to the world and must convey your organization’s core values and aesthetics. The fact that it must be a relatively simple design makes successful logo design somewhat of a paradox: something that is both simple and complex.
The difficulty of logo creation is why large corporations pay firms that specialize in such things huge sums of money for a product so small. People are visually influenced and many marketers know the importance of a strong logo. Indeed it is often considered the cornerstone of a company's brand. For this reason, if your company interfaces directly with a consumer market, Planet Telex highly recommends creating a unique and impactful logo. While there are websites where you can buy a cheap logo, they most often look generic which reflects directly on your company. Show the world that your company cares about itself, its image, and its quality with a strong corporate logo.
The designers at Planet Telex have created logos for diverse businesses like retail shops, online music distributors, restaurants, biometric identity providers, as well as our own. We approach each job as a unique challenge for your particular business- there are no cookie-cutter design or dogma to follow. We apply our intellect, ingenuity, and aesthetic expertise to craft the perfect logo for you and your company.
Most websites get only one chance to impress a visitor and convert them into a more meaningful customer and most businesses have plenty of competitors that also have websites, so a good website design can often mean the difference between you getting business and it going to a competitor. Since most website users make this value decision very quickly upon reaching your site, a poorly designed site means they will leave before you get a chance to present your message, information, or product. This is called bounce rate in our industry, and reducing it is one of the primary concerns of our designers.
Every website created should have one or several goals. Those goals are the site's entire reason for existing. Common goals include getting users to subscribe to the site, buy a product, or simply contact the business owner. When Planet Telex designs a website, we start with a list of your prioritized goals and create a website that not only “wows” a user with its initial impact, but makes it easy for a user to achieve those goals. When a website user achieves the goals set out by the website owner, we call this “conversion”. The ultimate goal is to minimize bounce and maximize conversions.
While it is true that some aspects of design are subjective, many design decisions can be quantified by how well they support a site's goals. This is measured by analytics. And although Planet Telex doesn't offer analytics as a service we do have plenty of experience in implementing analytics solutions and making design decisions based on that data.
Software design comes in many shapes and sizes: A software interface can be a web page, a mobile phone, a tablet, a laptop, a desktop, a large touch surface, or even your body movements. At Planet Telex we approach software interface design as a way to make human-computer relations and interactions as easy and pleasant as possible. For this reason, when we design software we start and end with the human experience, because that is the ultimate audience. We also take into account the software medium (i.e. keyboard and mouse, touch, motion) as well as the possible inputs to the program (i.e. a device that is location aware or has a camera).
Even with these considerations the majority of most human-computer interfaces are graphical. This is where our graphic designers apply their expertise, experience, and passion. Like everyone who has ever used a computer, the employees at Planet Telex have been frustrated or angered by bad design decisions in the software we use, and we turn our critical eye even more intensely on our own software designs to ensure our users won't feel that way.
Our designers have made a study out of what is good and bad, both academically and through personal experience. While we take pride in not being dogmatic (because we believe it can lead to cookie-cutter design), we also understand that usability is quantifiable and certain interfaces are more effective at others for a given task.
Ever since the release of the iPhone, touch interfaces (also called multi-touch to differentiate it from single touch input like a stylus) have become a whole new category of software interface design. Most modern mobile devices and smartphones use a touch interface, as do tablets and even large screens and surfaces.
Touch interface design is different from designing for a keyboard and mouse. For example in the world of touch, there is no concept of “hovering” over an element on a page- it is either touched or it isn’t. Unlike a keyboard and mouse, a touch interface must be designed for a specific size. What works for a small smartphone might not work for a tablet which might not work for a large screen.
At Planet Telex, we have experience designing for each of these scenarios as well as designing websites that work well on a touch interface.
From an end user's perspective, the user interface is the software. Whatever amazing algorithms or data manipulation your program is doing behind the scenes is irrelevant to them- they take it for granted that your software does something. What they care about is how they can use it.
A good user interface makes a user feel in control. When they feel in control they are happy and productive. What this means is that not only must your interface do something; it must also make it easy to do it. If the rise and prevalence of Apple products shows anything, it is that design matters as much as function. Apple didn’t invent the mp3 player- they just made the first one that everyone wanted. That is the power of good user interface design.
When we design an interface we are constantly seeking to streamline the user experience. This means making processes take fewer mouse clicks to complete, supplying input mechanisms that don't let the user make mistakes and designing layouts with a visual hierarchy in line with the goals of the software's functionality.
User interface can extend beyond the realm of graphic design as well, and can involve things like an accelerometer, a GPS, iBeacons, or a camera that analyzes your gestures. When creating a user interface, we always consider the medium and if there are opportunities to create an innovative interface that can make the software interface more intelligent and effective.
User experience is the broad term we use when discussing the entire experience a user has with some software or website. A large component of UX is the design of the user interfaceand usability of the design, but extends to other factors like response time of an application or website as well as its content. UX even extends to customer service, corporate policies, and marketing- anything that impacts a user's or consumer's experience with your company and brand.
This means that the creation and implementation of an excellent user experience is partly the responsibly of everybody involved in a project- executive, marketer, manager, developer, designer, and assistant alike. From the software development perspective UX in practice means good performance and good architecture and maintainability. Having good maintainability means you can react more quickly to the desires of your user base or the changes in your industry, all of which add to an excellent user experience.
When building interactive software, simple wireframes and mockups is not enough to capture the complexity of the functionality that software provides. This is why we build interactive, HTML based prototypes using a rapid prototyping tool. Interface changes are much less expensive when prototyping, which means you can iterate an interactive design more quickly to arrive at better results. Prototypes are also the best way to communicate software requirements to executive and developers alike- much more effective than text-based use case statements or non-interactive mockups.
Some examples of the prototypes we've developed are the Beers Around Me Administration web application prototype and the Bloom Music Suite Windows application prototype. You can see that not only are certain events hooked up to mouse and keyboard events, but additional annotations and notes can be included for maximum clarity.
A content management system (CMS) is a web-based system that allows a non-technical person control over the content published on their website, as well as limited layout adjustments. Popular systems that are considered content management systems include WordPress, Orchard, DotNetNuke, Sitefinity, Squarespace, Joomla!, and Drupal. While Planet Telex has experience with each of these, our two preferred CMS systems are WordPress and Orchard CMS.
WordPress, is often an excellent solution because there are thousands of plugins, widgets, and themes available for sale and for free which translates is a lot of value.
If a Microsoft .Net environment is possible and extensive customizations are required, we prefer Orchard CMS. For a lot of technical and architectural reasons, we believe Orchard CMS to be the most customizable CMS out there. We've implemented many sites, including this one, using Orchard CMS.
We take great pride in finding the right content management system for a client and customizing it to meet their needs is something we excel at. Not only can our designers and front-end developers customize the look and feel of a CMS and its extensions, but our development staff can create custom modules or plugins for it. This means that you can use a CMS to provide 90% of your website's functionality and custom develop the other 10%. This results in significant savings in time and money, which translates to happy clients who feel they have the power to easily maintain their website.
Many people immediately think of blogging when they think about WordPress- and it is indeed an excellent blogging platform- but it is also one of the most mature content management systems (CMS) in the world with perhaps the largest marketplace of third party plugins and themes. This alone makes it one of the most compelling options when selecting a CMS.
When choosing WordPress, you can opt for either a hosted solution or you own installation with the hosting provider of your choosing. No matter which option you choose, you will be able to host your WordPress site at the domain name of your choice, not WordPress.com, which is a common misconception.
Planet Telex has implemented and customized many WordPress sites ranging from blogs and basic “brochure” websites to sites with full e-commerce capabilities.
Orchard CMS is a relatively new content management system (CMS) that is based on Microsoft's ASP.NET MVC technology. By designing their administrative interface to be similar to that of WordPress, it is immediately familiar to WordPress users, which makes Orchard a viable alternate to WordPress in many ways.
Being younger, Orchard CMS doesn't have as many modules on their marketplace as WordPress does plugins, yet it does have many common items of functionality covered. What Orchard CMS doe provide that WordPress does not is the capacity for customized content types, not just “page” and “post” like WordPress. This means you can build your site semantically though a CMS interface. This and other architectural reasons make Orchard CMS the content management system that is most customizable and extensible.
Squarespace is a hosted content management system available at Squarespace.com. When asked what the cheapest and fastest way to get a basic website built that still looks professional our answer is Squarespace.com. You can sign up and have a website within 5 minutes. They do charge monthly, but it includes hosting and is reasonably priced.
They supply many templates to choose from, but also allow full control over the stylesheets applied to your site. This means you can implement a custom site design if you want. They provide all the most common website features and have one of the best WYSIWYG (“what you see is what you get”, pronounced wiz-ee-wig) editors of any system. This makes it easy for anyone to maintain and update their site.
For companies that already have a web infrastructure or a favored hosting provider, Squarespace probably isn't a viable option. It also doesn’t have the extensive third-party ecosystem of WordPress. If those limitations don't apply to your website needs, then Squarespace can be the ideal solution. It's easy to use, robust, customizable, and one of the fastest ways to get a professional looking website up and running.
The performance of software and websites is paramount to their success and goes right to the heart of the user experience (UX). Well performing code is reliable and responsive. Reliability means that unexpected errors do not interrupt the user's workflow or lose data, but are handled gracefully by the user interface (UI). Responsive code doesn't hang or perform lengthy operations without proper feedback.
Computer science guru Donald Knuth once said that “premature optimization is the root of all evil.” By this he meant that functionality comes first, and its performance can be optimized after it is functional. Trying to make every optimization up front is usually a fool's errand and wastes a lot of time and money. But once you have a functioning system, optimizing it for efficiency when interacting with humans is logical and often necessary.
The veteran software developers at Planet Telex have optimized a lot of code and databases on a variety of platforms and with a variety of languages. We have many tools for detecting code bottlenecks and simulating load, and can use them to analyze a code base to make performance optimizations quickly and accurately.
Not all software and website development firms have experience dealing with sites that support millions of users and the heavy traffic they produce. At Planet Telex we have experience writing applications that have supported user bases in the millions with thousands of simultaneous users. When dealing with great load infrastructure and hardware are crucial to supporting it, but so is good software architecture and an efficient, optimized code base and databases.
We've all been frustrated by the load time of a web page at some point. Don't let that be your users or customers. There are many, many ways to optimize a website or web application and you need an expert team to evaluate your project to determine which are worth spending time and money on.
Human website users have always appreciated responsive websites, and studies show that the longer the load time, the more users bounce from your site. Load time is also a factor that Google takes into account when ranking your site, impacting your site's search engine optimization (SEO). In addition to that, more and more Internet users are accessing pages from lower bandwidth areas on mobile devices. Performance issues can't be ignored, so if you have them ask Planet Telex about solving them.
Data access is the most frequent performance bottleneck in software applications. This is the reason there are so many solutions for caching data- keeping data in memory or a local source so it doesn't have to be looked up or generated again. And while caching is indeed a key component in creating fast performing websites and applications, excellent performance begins with a well optimized database.
With relational database systems like Microsoft SQL Server and MySQL, this means architecting a good data structure, keys, indices, and relationships, as well as a good data access strategy for your code, like an object-relational mapping (ORM) API.
It is also important to analyze your application's needs to determine the right data store for it. Many times this is a relational database, but can also include document-oriented database solutions like MongoDB and Raven DB, or even a semantic, resource description framework (RDF) data store. Planet Telex is a development partner who understands a wide variety of data storage solutions, and can choose the best solution for your project.
If your website, web service, or web application is successful, it might have to operate under a great load- many simulations users. While it can be a nice problem to have, if your website or application doesn't scale up to meet its load demands, users will get angry and possibly abandon your site, product, or service. Avoid this by realistically planning for a particular load, implementing the scaling strategy, and testing it for that load before it goes live.
Our engineers at Planet Telex have actual experience dealing with applications and websites that have supported literally millions of users and thousands of unique visitors daily. When it comes to planning for loads and implementing solutions that work, experience is everything. Not every software engineer is given the opportunity to design software for many simultaneous users and we are thankful and proud of the fact that we have personnel on hand who have.
Not every solution will scale the same way, and some scaling solutions will be more cost effective than others. You need a knowledgeable professional who has been there to present options. This begins with an analysis- Planet Telex uses a wide variety of code analysis and testing tools, which includes testing software to simulate load. Scaling solutions can be hardware based, software based, or a combination of the two. This includes cloud based hosting providers and content delivery networks (CDN). A CDN can often be instrumental to achieving good performance at high loads, and we have expertise in integrating with them to provide your website resources.
We say we do “internal” search engine optimization (SEO), meaning that we can optimize your web page layout and markup for maximum SEO effectiveness- including site performance. However we do not do other major components of SEO like copywriting, content creation, keyword analysis, and inbound linking. These are the “external” tasks we are implying we do not do, although we have trusted partners to whom we can refer you.
Another way to put this is that Planet Telex will optimize the structure and layout of your site, but not the content. Holistic SEO would mean providing content, tying it into marketing campaigns and generating links from other sites. This, along with the research of keywords, is a full time job and there are plenty of companies that specialize in just that.
But good SEO starts at home. Do you have well-structured, standards compliant markup that semantically presents content? Do you have human readable, “hackable” URLs, non-duplicate content, and a good sitemap hierarchy? These are all factors that govern how Google and Bing perceive and index your site. Our experienced web personal know what goes into good SEO and how to build out a site that way.
Going beyond SEO, Planet Telex also knows how to conform to standards for markup, style sheets, and scripts, as well as publishing content that meets accessibility standards. Most accessibility professionals will tell you that Section 508, the federal government standards, are not ideal. Companies who really care conform to the more stringent guidelines published by the W3C Web Accessibility Initiative. When you know the guidelines, adhering to them becomes second nature; however for too many companies accessibility isn't a concern that enters their consciousness. When you hire Planet Telex rest assured that your site will “look” great, even to the visually impaired.
Sometimes what you need is an expert to go through a code base and evaluate its quality. Whether auditing a deliverable or evaluating a code base prior to a merger or acquisition, it is important to know that a code base is robust, maintainable, and well designed. Poorly designed code-bases can have performance issues, cause unexpected errors, or be difficult to maintain and change. These are all factors that impact the value of any code base, and an independent expert review is often the best way to assess this value.
If a code base is poorly organized, it can result in buggy programs and high maintenance costs. Basic software engineering principles like separation of concerns, “don't repeat yourself” (DRY), and “don't reinvent the wheel” are essential to a well architected code base. It is also important to understand modern frameworks and methodologies like model-view-controller (MVC), dependency injection (DI) and aspect-oriented programming (AOP). Leveraging framework components and not re-implementing the functionality they provide goes a long way to improving code performance and maintainability as well as saving time and money.
Besides its organization, code itself can be written well or poorly. Is it clear and easy to read? Is it well documented or even documented at all? Are the best practices and coding constructs being used for a particular task? Are methods or functions not granular enough? These are just some of the questions our expert programmers can evaluate and answer for you.
Planet Telex has a great deal of experience working in the enterprise space, and with both Windows based and Linux based infrastructures. We have also used a wide variety of software and systems in the enterprise space, like SharePoint, Salesforce, and Exchange Server. Because we understand the features and functionality of these systems we can help you integrate them into you comprehensive enterprise solution.
Enterprise solutions often consist of web services, desktop services, websites, authentication systems, third party software, and custom user interfaces. Applying architecture to these different components can mean the difference between a streamlined, effective workforce and disgruntled employees. Our system architects and user experience professionals work together to make sure your company is the former.
When it comes to software development, it pays to hire a firm with enterprise experience. Most enterprise environments have many sub-systems that have an application programming interface (API) which unifies concerns like messaging and logging. Authentication and authorization often occur within a domain and integrate with enterprise user management systems like Microsoft’s Active Directory. Planet Telex has used these and other tools within diverse enterprise environments.
Before you can move forward, you have to understand where you are. If you have a code base or system infrastructure you need to asses, our expert developers and code architects can help. System auditing means taking a look at an entire ecosystem involving operating systems, licensed software, cloud-based services, custom code bases, and data stores then assessing their architecture as a custom business solution. After a macro-analysis, we can then analyze the individual components of your system, optimizing code, website performance, and databases.
In addition to a technical analysis of the system, our designers and usability experts can examine the workflows and human interfaces for the system. Often in large systems, there can be redundancies and workflows that are less than ideal. Sometimes these issues lead to human users circumventing the system entirely. This is why it is important to focus on the human factor when performing a system audit, not just the software and hardware. A smooth running system not only functions technically well, but integrates seamlessly into a human users' workflow.
While system auditing applies mainly to enterprise solutions, mid-size and even small businesses can often use many different software solutions working as an integrated system. More cloud based business solutions are available every day, most of which have application programming interfaces (APIs). Using those APIs, multiple vendors' solutions can be streamlined into a comprehensive and efficient system for your organization.
A successful software solution is often many systems working together. For example, you might have several websites, a web service, mobile apps, and a desktop admin tool all comprise a single software system. Those system components might integrate with external application programming interfaces (APIs) from vendors like Quickbooks, Salesforce.com, or Google. Weaving all of these components into a maintainable and scalable solution is what a systems architect does. Well-designed systems architecture can keep maintenance costs low and allow you to integrate new components easily as they become available.
When designing systems it is important to know tools and techniques that help you get the most out of your infrastructure. Understanding technologies as diverse as Windows Communication Foundation, Spring, SOAP, Active Directory, Apache, IIS, SQL Server, and many others takes time and experience. We are proud to have professionals among our staff that have this experience and can make the most of any organization’s resources.
The heart of most applications is their database. Most software is constructed around the organization and access of data. Good data architecture is the most fundamental thing you can do when designing good software. A good database design provides constraints that prevent invalid or bad data, prevent duplicate data storage and infidelity, yet is fast to access. These goals are often at odds with one another, and it takes an experienced professional to create the ideal balance.
Beyond relational database design, data architecture extends to other data stores like file systems, cloud services, content delivery networks (CDN), and XML as well as knowledge of alternative database systems like document databases, object databases, and semantic databases. Furthermore, an experienced data architect designs not only for the storage of data, but for its access and transmittal of it. This includes knowledge of messaging protocols and data formats. An understanding of web services, XML, XSLT, SOAP, HTTP, and other protocols and formats allows for tight integration with software applications interfacing the data.
Since data access can be one of the largest bottlenecks in an application's performance and good data architecture can significantly improve performance as well as data fidelity. It is essential for any quality software product. Planet Telex can help you create the ideal data architecture for your project.
Localization refers to the design of software “localized” to a particular area or user base. Typically this means translations into other languages, time zone conversions, IP address lookups, and geo-location awareness. It also accounts for differences in units of measure and currencies. In general, whenever an interface is customized to a user depending on their geography or cultural group it is localization.
Resource management is a large part of localization. Written content needs to be translated, images replaced, video re-shot or dubbed to facilitate a multi-cultural or multi-lingual experience. Planet Telex has experience doing this with both file based and database resources as well as localizing with a content delivery network (CDN).
Beyond localizing resources, we have also used many systems that assist in localization, like the APIs provided by Google and Bing Maps, weather services, and currency converters. We also have unit conversion libraries and geo-location databases we can use to make your application or website go global, faster.
We can't create your business strategy, but we can definitely help you with your technical implementation strategy and its alignment with your business. A good strategy means determining the right infrastructure for your business's needs and budget, as well as the software that runs on it. For most solutions, there are various options available on the marketplace, ranging from the pricey to the free. We can also develop a custom solution just for you. Sometimes all you need is an expert to help you weigh the pros and cons of these options, and we are always happy to consult.
Planet Telex also helps consult on software build estimates, functional requirements documents, prototypes, user experience (UX), search engine optimization (SEO), code review, and generally anything else within our realm of expertise. We've worked for a variety of companies and organizations both big and small and enjoy working with internal teams and gaining new experiences.
Whether you are have an internal development team or no technical personnel in your entire organization, the professionals at Planet Telex have experience working with your needs.