HiFiCoding

  • Skip to content
  • Jump to main navigation and login

Nav view search

Navigation

Search

Dynamic Typed languages are the future

Details
Published: Thursday, 09 January 2014 05:52

Oracle(originally SunMicrosystems) has added Dynamic language support in Java Runtime by introducing Groovy and GRAILS (web framework).  It is Oracle’s response to support Dynamic Language support.  

Microsoft introduced System.Dynamic namespace to support Dynamic Types in .NET 4 and also launched WebMatrix(IDE) to support development of web pages using a dynamic type scripting.  

There seems to be a huge interest in support of Dynamic types in Higher level languages. I believe that in programming languages like C# (.NET/MONO) and JAVA(JRE) where you have an intermediate layer which performs function like automatic garbage collection; the layer itself should identify the types at runtime based on their usage. There should not be much difference in performance as the intermediate layer itself has already created the performance overhead.  

It makes more sense to have a static typed model in programming language like C++, since all memory management has to be manually programmed. Now consider a dynamic language like PHP. When compared to ASP.NET and JSP, the overall memory consumption of PHP applications is far less. This just shows that dynamic programming can be more efficient as type identification and memory allocation can be performed much better by the system.

I personally believe that after nearly a decade Oracle (originally SunMicrosystems) and Microsoft have finally got it right.  

Operating system and Cloud Convergence

Details
Published: Thursday, 09 January 2014 05:50

By definition an operating system (OS) is a set of software that manage hardware components and provide abstraction for computer programs. But with the rise of Cloud computing, I wonder what role OS will play in the future.

 

Before we jump into the main topic let’s talk about the current state of OS for personal computers. The core of most modern Operating System is comprised of a Kernel, Device Manager, File system, Security and User interfaces (including command line shell). You may have something extra depending on the type of operating system (Windows, MAC, Linux/UNIX, etc...)

 

With virtualization, OS is moved up in the abstraction layer stack. The role of abstracting and managing hardware is entrusted to the Hypervisor which sits underneath the OS of a virtual machine. Also, the rise of virtual machines like JVM, Mono/.NET, etc... have abstracted the OS to a higher level. Therefore the OS is becoming less significant from an application development point of view as well.

 

The foundation of cloud computing is the concept of converged systems infrastructure. The software that is usually installed on a personal system is intended to be accessible via the Internet. These cloud applications then use colossal data servers in order to host them and allow for people to operate them fully. I feel this is the future for most programs. Installing and updating software’s on personal computers will be a thing of the past. Web-Browser will become less of software, and more a part of the operating system known as Cloud itself.

 

But one of the most obvious question which people would ask; wont we need an OS for basic hardware abstraction, get IP and connect to the Cloud applications? Well the answer is Yes!, however the OS on the personal system will be very basic trimmed software. A popular term on the internet to describe such OS is JeOS short for “Just Enough Operating System”. JeOS is not a generic fits-all operating system. It only includes the pieces of an operating system (e.g., kernel) required to support a particular application which in our case is the ability to connect to Cloud applications and services.

 

However it should be pointed out that there are things that will have to happen before this Cloud OS based abstraction becomes a reality. Internet connections to everyone will have to be much faster and stable. This isn’t something would happen overnight. However, it would definitely happen in the next five to ten years.

 

Reference:

http://www.novell.com/docrep/2008/08/Advantages_of_Building_Virtual_Appliances_on_SUSE_Linux_Enterprise_Server_Technical_White_Paper_en.pdf
http://en.wikipedia.org/wiki/Just_enough_operating_system
http://www.wolerized.com/opinion/os-cloud-future
http://www.telegraph.co.uk/technology/google/6616391/Google-Chrome-OS-Are-clouds-the-future-of-computing.html
http://www.makeuseof.com/tag/cloudo-your-entire-operating-system-in-the-cloud/

 

 

*If you find something is misleading or not correct then please throw some light on it.

 

 

 

Testing-as-a-Service TaaS

Details
Published: Thursday, 09 January 2014 05:49
Meeting today’s challenges for testing and application development for the Enterprise

For today’s global enterprise, custom application development and testing represents a large part of IT’s time and expense. The ability to update, refresh, or bring on line new
applications quickly is critical to the competitive advantage of the organization. For example, mobile applications to take advantage of the explosion of handheld and portable devices. Application testing in its various forms can be a gating factor in the efficient delivery of new application value to the business. As IT departments look to provide a rapid development environment, often testing struggles to keep up.

 

Factors that are impediments to efficient testing:

 

  • Insufficient test infrastructure to handle surges in demand
  • Strain on capital budgets to handle new projects, large scale requests, or new technologies
  • Procurement approvals and set up of test environments are significant bottlenecks
  • Test tool licenses are expensive and difficult to administer and manage
  • Testing often done in silos without a standard process or shared operations
  • Scheduling tests and resources is an in-exact science with lots of inefficiency, impacting product release
  • Test personnel are frequently not aligned to the test environment, either from a domain or technical perspective

 

If your development and test processes are negatively impacting business, it’s time to
look into Testing-as-a-Service.

 

Cloud solutions are well suited to deliver efficiency and cost savings for application testing where flexibility and time-to-market are at a premium.

 

Key attributes of cloud-enabled testing :

 

  • Highly scalable, on-demand infrastructure supports immediate capacity needs
  • Rapid deployment of testing configurations—special tools and process allow you to build new test environments in a matter of hours on the public cloud rather than weeks
  • Quickly decommission tests as needed—only pay for the actual time that you are testing
  • Simulate large “real-life” scenarios such as giant server farms, without the CapEx exposure
  • Apply various configurations of compute power to the test bed to match the needs and expected configurations of production deployments—for example the number of CPU cores and memory
  • Pre-configured test “templates” can be instantly instantiated with the ability to run new tests on demand
  • Licensing headaches can be off loaded to the service provider—pay a single fee for a bundle of testing related services
  • Global reach—tests that would benefit from external or public access can be more easily accommodated through a public-based cloud testing framework

 

 

What makes PHP (LAMP) so popular?

Details
Published: Sunday, 22 December 2013 20:49

Almost 70% of all open source applications are written in LAMP. Major giants like Yahoo, Twitter, Facebook etc; make use LAMP for developing most of their applications. LAMP is the most dominating platform for web (client/server) development, and there is a very good reason for that. There are possibly 1000’s or more open source frameworks, which significantly simplify the overall development time. Also they are very highly featured.

Though PHP code may look cryptic at first but it is really simple to code. Also there is a framework for every web development; you will end up coding very few lines of code.

Read more ...

Should we adapt Windows Presentation Foundation (WPF) ?

Details
Published: Sunday, 22 December 2013 20:47

WPF provides 2 major benefits to developers :

  1. "Unified programming model" for Web-Application and Desktop Application.
    This is achieved through the use of XAML language for designing user interface.
  2. It makes use Direct X for hardware accelerated graphics . As a result the UI is much richer.

Read more ...

More Articles ...

  1. What makes .NET so popular?
  2. Razor” for ASP.NET 4.0
  3. What makes C++ so popular ?
  4. C# on MONO

Page 6 of 7

  • Start
  • Prev
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • Next
  • End