Category Archives: Web

Why Facebook’s Hack May Fail to Fly With PHP Developers?

Well, for those innocent souls, I must make it clear that the title of this article has no intentions to point out that Facebook is hacked or so? This is actually about the new programming language, HACK, that Facebook officially launched few days back. Overview of Hack Language Before I go on to write further, I must thank the Facebook engineering team to have rightfully identified some of the short-comings of PHP programming language and tried to present solutions to them using Hack programming language. However, while I was going through the changes that they made by adding new features to PHP and made it as Hack language, I wondered whether …

Continue reading

Posted in News, PHP. Tagged with .

Why & When Use Java 8 Compact Profiles?

The article presents a perspective on different aspects of compact profiles in Java 8 including relevance of this feature in the first place and, when would you want to use it. As I am also getting up to speed with compact profiles, I do understand that there could be further detail to it that I might have missed and thus, would appreciate if you could share your perspectives as well. What is Compact Profile? As defined on Oracle compact profile overview page, compact profile enable reduced memory footprint for applications that do not require the entire Java platform. In Java 8 release, compact profiles provide three different groupings of libraries …

Continue reading

Posted in Java, News. Tagged with .

Java 8 to Face Challenges with Enterprise-wide Adoption

The article represents some of the challenges that an enterprise might face in relation to the adoption of Java 8 across different line of businesses (LOBs). Buy-in from Business & Technology Stakeholders Unlike previous Java releases, Java 8 release has come up with some unique features which are there to sort out some of the existing technical challenges (such as Lambda expressions, Collector APIs for map-reduce transformations, Nashorn engine etc) and, challenges in relation to making Java friendly to different devices and modular (compact profiles) in coming future. The primary issue that business and technology stakeholders are going to face is to find out and get convinced with business and technology relevance …

Continue reading

Posted in Java. Tagged with .

5 Free Web Design Courses from Microsoft Virtual Academy

The article represents 5 free courses from Microsoft Virtual Academy which could be of interest to a rookie/fresher web developer who would like to learn the concepts around HTML5, CSS3 and Javascript. There is also one course related with SEO which would help web developers to apply right techniques with HTML/CSS to optimize the page for search engine optimization (SEO). Following is the list of 5 free courses. All you need is to signup and add these courses to learning program and get started. Enjoy the learning. HTML5 & CSS3 Fundamentals: Development for Absolute Beginners http://www.microsoftvirtualacademy.com/training-courses/html5-css3-fundamentals-development-for-absolute-beginners HTML5 App Development Fundamentals http://www.microsoftvirtualacademy.com/training-courses/html5-app-development-fundamentals Developing in HTML5 with JavaScript and CSS3 Jump Start …

Continue reading

Posted in Web. Tagged with , .

Java Developers Readiness to Get Started with Java 8 Release

The article represents different set of information that Java developers (working on 5, 6, 7 versions) may need to learn prior to getting started and make best use of Java 8 features. In case, you feel there are other topics that developers need to look beforehand, please suggest. Following are different concepts which Java developers working with earlier versions of Java need to understand very clearly in order to get started comfortably with Java 8 features. Functional programming concepts Learning functional programming concepts would help you learn Java 8 flagship feature such as Lambda expressions. In short, Lambda expressions helps you treat functionality (represented as code) as data which you …

Continue reading

Posted in Java, News. Tagged with .

Javascript Libraries to use for Faster Webpage Loading

The article explores the web page loading issues in relation with loading of static resources such as Javascript/CSS files and goes on to suggest Javascript libraries that could be used to enable conditional loading of JS resources thereby achieving faster webpage loading. Following are some of the common use case scenarios that, if taken care, would enhance faster web page loading: Conditional loading of Javascript files in various different pages: Many of the I-could-also-do-front-end-programming adopt the approach of putting all the resources such as Javascript & CSS files in one common file and include the file in different web pages. Some of these common JS files include jquery & other …

Continue reading

Posted in Performance Engineering, Web. Tagged with .

Tips to Load Your Webpage Faster based on Google’s Pre-* Recommendations

The article recommends 4 simple tips to load your webpage in faster manner based on Google Pre-* technology recommendations. These tips are based on suggestions by Google Engineer, Ilya Grigorik in his presentation that could be found on this page. Do note that most of these (such as pre-fetch, pre-resolve etc) are also part of their PageSpeed initiative. While I was reading the presentation, it struck me as to check out on who is leading the internet browser share in the market. Following is the plot I could come up with data based on browser usage statistics. And, the winner is Google Chrome. Thus, I found it relevant enough to …

Continue reading

Posted in Performance Engineering, Web. Tagged with , .

UI Lessons from Revamped Yahoo Homepage Design

The article represents the UI lessons that one could learn from newly launched Yahoo homepage. Please share your opinion and help me add more points. Take a look at screenshot of the new, revamped homepage below: The objective behind the revamped homepage design is to offer users more smooth and adaptable experience and makes it easier for the users to discover content. Following are some key characteristics of revamped homepage with focus on enhanced usability: Simpler navigation with the ability of one doing following in easy manner: Browse top stories Checking email Access stocks, photos, or weather.  Cleaner design that’s easy to navigate  Ease of use with the familiar search …

Continue reading

Posted in Web. Tagged with .

How Static Resources (CSS, JS) are Served at Facebook.com?

This article talks about techniques used at Facebook.com to serve the static resources such as CSS, JS and Images files when someone accesses Facebook.com. If you are one of the developer at Facebook and worked on related modules, and disagree with one or more aspects of this article, please drop a message and I shall change the same appropriately. The article is aimed to present a perspective on how to handle the web static resources, based on how it is handled at facebook.com. Thank you for reading it further. Back in February 2004? Well, like most other startups, facebook got launched in February 2004 with usual manners of serving CSS & JS …

Continue reading

Posted in Web. Tagged with , .

Use Facebook BigPipe to Load Webpages Faster

This article represents Facebook BigPipe technology and various different open source frameworks which could be used to load web page faster like Facebook. Please suggest related frameworks if one or more of them is not mentioned in this article. You may have read the text on BigPipe on several webpages. However, I wanted to present a different perspective including pictorial presentation for better understanding. Traditional webpage serving model  Following diagram represents traditional webpage serving model.   You may notice that in traditional model, the request-response operations are pretty much sequential in nature. Thus, following can be observed: Webserver Busy, Browser Idle: As the request is sent from browser, and webserver …

Continue reading

Posted in Performance Engineering, Tools, Web. Tagged with , .

Java Lambda Expressions Explained with Examples

java8 lambda expressions

The article represents different viewpoints on Java Lambda Expressions (Java 8) to help Java developers understand what, why, when, how of Lambda expressions. Lambda expressions are nothing but a way to abstract behavior unlike the object-oriented programming which is based upon the abstraction of data in form of object. Lambda expressions are used to assign the behavior to a variable or pass the behavior in between method calls instead of wrapping the behavior in an object and working with the objects. Take a look at the following example to understand the Lambda expressions better.Remember, the famous addActionListener method on button to capture the button-click event and, take action when the …

Continue reading

Posted in Java. Tagged with .

Infosys.com Website Design – A Post Mortem

infosys website screenshot

This article represents some of the libraries, tools & framework one would want to use to create Infosys style website. Lets first try and re-iterate some of the key striking characteristics: Responsive Large fonts, vector icons Background image slider with diligently selected relevant images Following are some of the tools (libraries) & technologies (programming languages etc) that can be used to achieve some of the above: .NET programming language: The website is created with .NET programming language. Font Awesome 4.0.3: Font awesome is used for vector iconsfound at several places on the website. Fotorama image slider: The image sliders on homepage and various other pages is empowered by fotorama.js. Webtrends:  Looks …

Continue reading

Posted in Web. Tagged with .

Why FlipKart.com used OpenSearch to Empower Its Shopping Search Engine

I had an interesting incidence few weeks back when I wanted to access flipkart.com and I opened Google Chrome browser, wrote the address flipkart.com and added a space to it. And, what I found was following:   And, the next moment I wanted to know about how did they achieve this. Upon doing some research, I found that it is a set of OpenSearch technologies that let Google Chrome enabled something like above for flipkart.com. And, I was able to write query word such as mobile, and it showed up the search results for mobile phones. It did save me from going on to flipkart.com and write mobile in the …

Continue reading

Posted in Web. Tagged with .

5 Tricky Interview Questions for Java ArrayList

I have been involved in many a java interviews and following are five tricky ones where I found several junior to mid-level Java developers faltering once in a while. Thus, I thought to put an article around these questions to help junior Java developers make familiar with these questions. The article presents the 5 tricky interview questions in relation with Java ArrayList, I believe,  could get the interviewee score some browny points, if answered well. Let me know if you agree and would like to add another set of questions to the list below: How does the size of Arraylist increases automatically? Could you share the code? This is the most …

Continue reading

Posted in Java. Tagged with , .

6 Java Exceptions that Haunts a Newbie Java Developer

exceptions

Every now and then, I come across various newbies Java developers who are found to get stuck with some of the following common exceptions where I need to explain them all over again. I do believe that this is same with many other senior Java developers who try and help these rookie developers to deal with following exceptions. Thus, I thought of coming up with this article and use it for myself going forward. Please feel free to comment or add to the below exceptions list. NoClassDefFoundError: This is one of those exception, with message such as Exception in thread “main” NoClassDefFoundError, that has been most commonly found to welcome newbie Java developers to …

Continue reading

Posted in Java. Tagged with .

3 Java 7 Features Aimed to Enhance Code Quality

java 7 features

There are several new features that have been released in Java 7 to take care of several developers’ requirements. However, interestingly, I have figured out that three of those 7 features are primarily aimed to enhance following key characteristics of code quality. Please feel free to share your opinion on them. Code Readability Code Duplication Code Complexity Following is the detail of those 3 Java 7 features: Underscore in Numeric Literals (Enhances Code Readability) This feature primarily takes care of code readability, and hence, code usability,  having large numbers having several digits. For example, credit card number, social security number etc. Many a times, we come across large number which seem to have an embedded …

Continue reading

Posted in Java. Tagged with .