Monthly Archives - October 2014

asp-net-mvc-5

ASP.NET MVC 5 – is it worth the trouble of an upgrade?

Microsoft’s ASP.NET MVC 5 promises a number of tantalising new features over its predecessors. These include: attribute-based routing, filter overrides, native support of Twitter’s Bootstrap code for CSS and HTML5 enabled sites, simple integration to work across multiple frameworks and easier authentication.

Let’s go through the enhancements and improvements included in the update in a little more detail.

Attribute-based Routing

One of the most exciting new features of Microsoft’s MVC 5 is a new routing feature called attribute-based routing.

The earlier style of routing used in previous versions, called convention-based routing, can leave developers scratching their heads trying to understand the application’s relationships as the routes are separated from the controllers they apply to. However, as its name suggests, attribute-based routing uses attributes to define routes and gives developers more control over the URIs in the web application.

Filter Overrides

This snazzy new feature does away with one of a Visual Studio developer’s biggest headaches. Filter Overrides allow a developer to replace or completely clear certain filter types that are created at higher scopes in one fell swoop.

Now if a developer wants to override a global action filter in one of the action method’s then they just need to apply the “OverrideActionFilters” attribute. In previous versions of .NET MVC, in order to override a global action filter or a global controller filter, a developer had to painstakingly apply a filter for each action and controller, one by one. Filter Overrides do way with this completely.

Bootstrap

Twitter Bootstrap has been added to Visual Studio 2013 as the default user interface framework for an MVC application.

Bootstrap is a clever beast which is comprised of a free collection of HTML and CSS design templates developed over at Twitter. It can easily be downloaded here http://getbootstrap.com and the framework is increasingly popular with software developers as it cuts down on development time and produces a set of clear and consistently designed websites.

The framework means developers can rapidly design form elements, navigation bars, tables, buttons and other generic elements needed for a responsive user interface. All without having to rehash the same code used across multiple sites, which just reinvents the wheel and wastes precious development time.

Bootstrap also promotes responsive website design as the page’s layout will automatically adjust with the browser’s width. In other words, Bootstrap optimises the page for mobile browsing, which is a key piece of design functionality for any modern website.

Also included in the Bootstrap package is the bootstrapper.js file. This contains plenty of useful jQuery code to provide interactive plug-ins and components in a single file.

In short, the native support of the Bootstrap library gives developers a massive boost to their application’s arsenal, giving them a wider range of multi-platform HTML5 and CSS options than ever offered before.

Scaffolding

Bootstrap isn’t the only framework included in Visual Studio 2013; there is also the new Scaffolding Framework provided for ASP.NET Web Applications.

Adding Scaffolding to a project lets a developer quickly add code that interacts with data models. Using Scaffolding also reduces the amount of time to develop standard data operations in the MVC application. Any framework that reduces development time is sure to get a big thumbs up from the development community.

Improved Authentication

Microsoft has improved authentication for ASP.NET MVC 5 by including third party authentication and improving ASP.NET Identity.

An ASP.NET MVC 5 application can now be accessed by developers logging in using an external authentication provider, like Google. So developers can simply use their Gmail address and password to log in to the application, and the application only demands permissions to view their email address and basic account information.

Next up, we have ASP.NET Identity. True, this is not strictly a “new” feature, but it has been improved to give users a single sign on across frameworks such as Web Forms, MVC, Web Pages and so forth.

One ASP.NET

Another new feature is One ASP.NET, which is a unified project system for .NET software developers.

Working with multiple frameworks in a single project is made significantly easier using One ASP.NET, allowing software developers to combine Web Forms, MVC, Web API and other frameworks together in a single project.

This feature means developers no longer need to pick a single technology at the start of a project and stick with it. Instead, One ASP.NET encourages developers to use multiple ASP.NET frameworks within one project.

To conclude, ASP.NET MVC 5 is a more than worthy update as it enables developers to build dynamic websites with an emphasis on clean architecture, extensibility and test-driven development.

Contact Us, to learn more about how we could help you implement ASP.NET MVC in your website.

HTML code

How to find the right software developer for your new business

You understand what you want from your software – more or less. What you don’t understand is that mysterious coding thing developers do that makes it work. So how are you going to choose the software developer who’s going to help you make your new business fly? Won’t the charlatans run rings around you? You know it’s a fiercely competitive market out there, so how will you even know when you’re looking at the answer?

We’ve put together a handy step-by-step guide to software outsourcing to help you make possibly the most crucial business decision you’ll ever make.

1. Clarify your needs

A good developer is not going to blind you with .net or c#, but you’ll make the communication between you much more effective if you’re able to accurately articulate what your business needs. Sit down, think it through, and talk it over with someone else if it helps. The two basic questions to ask yourself at this stage are “Do I want an interactive site?” and “Will there be a mobile aspect?”. If you need your site to interact with users, rather than passively presenting information, you should at least consider involving a developer. If you’re planning to target smartphones and tablets, make sure you find one with demonstrable mobile experience too.

2. Get a second opinion

Background research will help you to sort the wheat from the chaff. If you know someone whose job is to hire coders, ask them to help you to vet any applicants. Network, whether that means in the bar after work or online. Word of mouth recommendations are so much more reliable than an overblown CV. If there’s really no-one, try attending a developers’ meetup in Costa Rica and you should soon get a feel for who genuinely knows their stuff.

3. Speak their language

Good software developers are coders because they love both the puzzle of the code and the creative potential in mastering it. This is what gets them out of bed in the morning. If you want to really communicate with a developer, try to avoid sounding too obsessed with business and your bottom line. Present them with your ideas and ask them how they would go about making them work, improving on them, and pursuing related ideas you hadn’t even considered. Once you have them inspired by and thinking practically about your project, they’re almost certainly hooked.

4. Treat them as professionals

Be realistic about what you can offer in terms of both remuneration and career development. If you can demonstrate the potential of your new venture, through evidence like a prototype, secured venture capital or good industry connections, share this information. If they’re any good, they’ll have options too.

Contact Us, we would be happy to hear about your project and provide advice.

rails

How can Ruby on Rails benefit your web applications?

When it comes to developing top quality web apps, there is always something new to take notice of. The technology programmers have at their disposal is constantly evolving, and our dedicated team in Costa Rica pride themselves on being persistently ahead of the game.

That said, sometimes tried and tested tools truly do stand the test of time too. Ruby on Rails is one such example.

Ruby on Rails development is by no means a new idea, but it is certainly an effective one. Many seasoned developers continue to ‘stick with what they know’ because despite being around for some time now, Ruby on Rails has maintained its reputation and status as an incredibly powerful development device. It consistently offers numerous benefits to both developers and end users, so should undoubtedly be given consideration by program creators embarking on a new web app project.

So, what exactly is Ruby on Rails?

In a nutshell, Ruby on Rails uses a specific programming language as a development tool to aid web app development. Ruby refers to the language that Rails is written in; programmers use one alongside the other, which gives Ruby on Rails its name. The framework includes a set of conventions designed to streamline the development process and help to speed up commonly used and/or repetitive actions within the coding. The style of the framework makes it ideally suited to fast moving projects where requirements are constantly changing – making it perfect for all sorts of web applications.

What are the benefits?

The biggest advantage of Ruby on Rails is that when it comes to creating web applications, it really is the perfect tool for the job.

It is flexible yet powerful in its simplicity, allowing Ruby on Rails developers to produce high quality functioning prototypes of their applications in no time. From such a beautifully simple and streamlined starting point, the extended development invariably goes smoothly too.

In turn, developers are able to market their products more quickly, freeing up their time and resources to satisfy demand for new versions as and when requested by their users.

Despite its simplicity, Ruby on Rails is able to handle even the most complex web apps with ease. In an ever changing market, developers can update and provide additional features as and when requested by their clients, with integration that is fast and seamless.

From the end user’s point of view, the advantages of working with a Ruby on Rails developer is that they will be able to provide high quality solutions with a quick turnaround time, as well as allowing for changes, updates and new features as required.

In conclusion, it’s not hard to see why the development community have such high praise to offer Ruby on Rails.
This is a program that benefits programmers and end users alike and should certainly not be overlooked.

Contact Us, a Ruby on Rails expert would be able to talk to you and understand your needs.

agile

Why agile software development with Scrum methodology is great for developers

Today’s application market is fast-paced, and is becoming increasingly more rapid. The traditional project management methodologies such as PRINCE2 in the UK and Waterfall are no longer suitable to meet the demands of the modern programming market.

Whereas traditional methodologies rely on the completion of steps before work can progress, Agile Scrum methodology is an iterative process that delivers functionality in the product along the entire project lifecycle.

Each stage of the project is done in sprints, with aspects of the product completed in order of their priority. This can allow for a product to be rolled out before it is completed to full specification as its core functionality is ready to use before additional features are added.

It also allows the customer to be involved more in the development process as they can see each stage of the product’s development and provide feedback along the way.

Probably the greatest benefit of Agile Scrum is that it is a more flexible process, which is essential in a programming project. Other methodologies require settling on the description and specification of the final product before work commences. Whilst this may be crucial in other industries (such as engineering and architecture), it leaves little room for modification in a programming environment, where a product tends to need a little tweaking here and there when it’s being prototyped, or to respond to the changes in the market trends.

If developers are working on an application and complete it to its full specification, only to find that the client requires major modifications, it can add large delays to the deployment of the application and increase the cost of the project.

With Agile Scrum, the application is reviewed along each step of the process, meaning that changes can be made during the product’s development with comparatively greater ease. It benefits both the developer team and the customer as it reduces the development time cost.

For Agile developer teams, the benefits extend beyond customer satisfaction and development time. Using the Agile Scrum methodology is a more collaborative process, which brings each area of the team closer together to work as one unit.

The key aspect of the Agile Scrum is having a daily meeting where everyone discusses what they’ve been working on and what’s next. It allows the teams to share problems and brainstorm together to devise solutions together, which can lead to a better working environment for the developers.

Ultimately, who benefits the most from Agile Software Development with Scrum ? The end user.

Due to the iterative nature of the product development, the application has undergone a great deal of review, tweaking and testing along its development process, so the finished product has already dealt with the majority of issues or bugs and is at its most optimum level by the time it reaches the consumer.

Contact Us, At FusionHit we provide expert development in web and mobile applications for businesses in USA and beyond. Find out now how we can help you!

outsourcing

Why choose nearshore software outsourcing?

Modern businesses know there are many advantages to outsourcing various software-related projects – increased profit margin being just one of them. One of the key decisions, however, is to decide which to opt for: nearshore software outsourcing or going offshore?

Here are three reasons why nearshore software outsourcing is the smarter of the two choices:

Communication

Ease of communication is vital to achieving a successful outcome and obstacles, such as a language barrier, or a different time zone between client and provider can be a real handicap. Offshore companies are often on the other side of the world and will sometimes have an onshore point of contact to facilitate communication, but even this isn’t ideal. Combined with a different time zone, this three way communication can start to be a real drag on progress.

One of the key benefits of nearshore software outsourcing is that the software development team will be close enough to make communication straightforward. If someone is developing an app on your behalf you want to be able to reach them without going through a third party, or having to wait a few hours until they get to the office!

Close is good

If you’re US based it makes sense to look for a nearshore solution, somewhere where language is no barrier, where there are no great cultural differences, and where communication is fast and efficient. This is where Costa Rica comes in. Members of the development team in Costa Rica will have no difficulty whatsoever in understanding how to meet their client’s brief – which is why their nearshore software development companies are in such high demand.

Nearshore companies take less time to get to than offshore firms, which can often be as much as a 12 hour flight away, with connecting flights involved. If you want to meet face to face with the development team before you give the go-ahead, a nearshore firm is going to be easier to reach, and will cost you less in terms of time and money.

Value

Going for the cheaper option – which offshore firms often are – can be false economy when what really matters is getting value for money. Due to the proximity of an onshore firm as well as the lack of language barriers and similar cultural values, you are much more likely to see the smooth delivery of your project and to be able to put your new software to work.

To find out more about the benefits of nearshore software outsourcing, visit www.fusionhit.com