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 …
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 …
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 …
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 …
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 …
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 …
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 …
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 …
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 …
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 …
Java Lambda Expressions Explained with Examples
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 …
Infosys.com Website Design – A Post Mortem
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 …
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 …
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 …
6 Java Exceptions that Haunts a Newbie Java Developer
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 …
3 Java 7 Features Aimed to Enhance Code Quality
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 …
I found it very helpful. However the differences are not too understandable for me