URL vs URI vs URN

mainOut of the three acronyms in the title, I guess you are most familiar with URL. Some of you may have heard the other two being thrown around here and there. These acronyms are basically related to the internet. To be specific, they are related to accessing stuff on the internet. What is the purpose of having those three acronyms in the first place? What is the difference between them? Why does it matter? This may be confusing to some, so I thought I should share my understanding of the these concepts.   Continue reading

What Is Fuzzy Matching?

1 mainThis is a continuation of the previous blog post on fuzzy search. We use fuzzy matching algorithms in fuzzy search to come up with the search results. The strength of a fuzzy search algorithm heavily depends on the strength of the fuzzy matching algorithm that is being used. The concept of matching refers to an input being matched to a set of entries, or records, in your database to come up with the best possible match. We encounter this scenario very frequently in our everyday lives. Whenever you are looking up a word in the dictionary or when somebody is looking up your account during a customer service call, some form of matching is being used to get the answers. So how exactly does fuzzy matching work? What’s the big deal here?   Continue reading

What Is Fuzzy Search?

fuzzyThe word “fuzzy” means something that is indistinct or vague, something that cannot be explained precisely. We all know what “search” means. That should give you a hint of what this blog post is about. Whenever you type something into the Google search engine, you will see that it always returns good results, even when you type the wrong spelling. How does it know what you meant? There are many different ways to misspell a word. How does it know exactly what word you have in mind?   Continue reading

Adding Hacker News Button To Your WordPress Blog

hacker-newsEvery blogger writing about technology or any related field knows how important Hacker News is for promoting good articles. If your article reaches the front page there, it will have a stronger effect as compared to more general sharing sites like Reddit, Digg and StumbleUpon. Hacker News junta is more tech-oriented, and so their opinion would be more valuable. If you have hosted your blog on WordPress.com, you know that it provides very nice features for sharing on different sites. Unfortunately, Hacker News sharing is not supported by WordPress.com. Luckily, we have an option to add custom sharing button, that makes it really easy to create a custom button yourself. Here’s how you do it:   Continue reading

DNS Cache Poisoning

1Internet entities are regularly affected by Distributed Denial of Service (DDoS) of various scales. This is basically a way to hack into an entity and stop it from working. Hackers use it all the time to bring down famous sites. They tend to attack the domain name system (DNS), since it allows to infiltrate heavily. Now what is a domain name system? Well, a domain name system server basically translates a human readable domain name (such as mysite.com) into a numerical IP address. This numerical IP address is is used to route communications between nodes on the network. For people who didn’t already know, this is how the internet works! Coming back to the hacking part, the attackers like to attack their victims by poisoning the DNS. Wait a minute, how do you “poison” a system? How do they actually attack the users?   Continue reading

Content Delivery Network – Part 2/2

mainIn the previous post, we discussed about content delivery network (CDN) and why we need it. This post is a continuation of that topic. Here, we will discuss about the pros and cons of using CDN. CDN obviously helps the sites that experience heavy traffic. Most of the times, you will think that just using a CDN will deliver a better performance, but this is not always the case. If you don’t choose your provider carefully, your site will end up suffering. Let’s look at some of the advantages and disadvantages of using CDN.   Continue reading

Content Delivery Network – Part 1/2

mainInternet users today are demanding faster and higher-quality services from their media hosting companies. Being an internet user yourself, you should know that we place a high demand on these services. This is the reason quick access and delivery of rich-media like music, photos, videos etc has become a top priority. Wait a minute, why we need to care about all that? Doesn’t that just happen somewhere on the server? Well, who do you think makes that happen? It’s the people who manage the website. The beautiful site that loads all the high-resolution images for you doesn’t just work magically by itself. It needs to be optimized in a zillion ways for you to not feel the pain. All of your pages, including your photos and videos, will load quickly and instantly if the website owners use the right Content Delivery Network (CDN). Let’s see what this whole thing is about, shall we?   Continue reading

Why Do We Need Stress Testing?

mainThis is the third and the last blog post in this three-part series. If you want, you can read the first and second posts. In these previous posts, we discussed load testing and performance testing. With load testing, we can see how the system behaves when there is too much load. With performance testing, we can analyze all the moving parts of the system and optimize them accordingly. Load testing and performance testing analyze existing parts assuming everything is in tact. But what if a part of the system completely breaks down? How will you know what’s going to happen at that point? This is where stress testing comes into picture.   Continue reading

Why Do We Need Performance Testing?

mainThis blog post is the second one in this three-part series. If you want, you can read the first and third parts as well. In the previous blog post, we discussed about load testing and how it is useful in determining the behavior of a given system. Load testing is actually a part of the bigger performance testing framework. With load testing, we can understand how the system will behave under extreme load conditions. But what about all the other moving parts of the system? Extreme load is not the only problem a system can face. How do we understand all the constraints of a system? How can we determine what part of the system is going to misbehave in real time? This is where performance testing comes into picture.   Continue reading

Why Do We Need Load Testing?

mainThis blog post is the first one in a three-part series. If you want, you can read the second and third parts as well. Let’s say you are building a website that allows users to create an account, upload photos and browse around. So you will go ahead and define the functionality, design the interface, build the core backend and add all the necessary infrastructure. But how will you know if your design is strong enough the handle everything? How will you know if the website will perform well when a lot of users use it simultaneously? This is where load testing comes into picture.   Continue reading