Tag Archives: Technology

Why are phone companies like Apple removing headphone jack?

Prior to computer-created sound files or digital sound, sound was recorded via analog. That means engineers used electronic or mechanical means to capture and transfer sound. These are called analog technology.

For example, a tape player is analog. It plays back sound through mechanical means.

Meanwhile, your computer plays digital sound. This is encoded data that the computer reads and translates into sound.

Almost all the consumer wired headphones are analog technology. However, our phones and the music we play is digital. That means phones need DACs installed in the phone. These are digital to analog converters. Compared to other cell phone parts, they are typically much larger and there’s a physical limitation to how small they can make them. Also DACs can have a significant effect on sound quality.

The way to get significant space to make the phone smaller, and possibly conserve battery life would be to eliminate the DAC and headphone jack altogether.

In addition, more phones are competing for Water resistant certifications. And the headphone jack presents a challenge because it needs to be able to conduct electricity yet, resist water damage.

Lastly, less analog parts and less ports means less maintenance issues. One more port and the DAC means one more chance for something to put the phone out of commission.

The downside though, is that digital headphones aren’t prevelant and not nearly as cheap. Obviously, having sound go through same port as charging is not ideal. There isn’t a standard that all manufacturers can agree on for digital headphones. This leaves Apple to charge a premium price for proprietary technology.

Apple has a rich tradition of not clinging to tradition. If they see something that represents holding back future change, they don’t mind dropping it. They also aren’t nearly as afraid to require customers to buy proprietary technology because they have a business model that supports this dynamic with their customer. Plus their market segment does not include customers looking for the best bargain. That gives Apple alot of flexibility.

How does clearing browser cache/cookies fix a lot of website issues?

In the case of a web browser, sometimes temporary files and cookies are not current, or even become corrupted. Either way, if changes were made in the browser when trying to load, if the browser is attempting to use what is cached and it is conflicting with what the website currently has, then it can load badly or not load at all. So clearing it forces the the browser to load it as if it were visiting the page for the first time.

Also to note, sites that use a page count, such as newspapers who allow a limited number of articles to be read without a subscription, use cookies and temp files to show that this browser/pc has read x-number of articles, which would cause it to load that annoying screen prompting you to log in or subscribe. Clearing the cookies removes that reference point.

Why are screen resolutions like 1920×1080 rather than 2000×1000?

Originally, the standard was 4:3 since several experiments found that the human eye’s field of view (FoV) was of the same ratio (155° H x 120° V). Hence it was continued as the standard for film, camera and later for TV as well.

Now Hollywood industry had to be something different compared to the home television. As a result, Hollywood came up with widescreen movies with more picture content which created the wow factor and was successful in drawing back crowds to theaters. Since there was no standards body back then, several aspect ratios started cropping up across different film houses, some of the popular ones being Panavision ratio of 2.20:1 and a much wider format called CinemaScope of ratio 2.39:1. This way, Hollywood managed to get back its audience for movies, while casual viewing at home like soap operas and news continued with the 4:3 ratio.

Going forward, to accommodate this wide array of aspect ratios under a singular standard, the geometric mean of the extreme ratios (1.33 and 2.39) was taken at approx 1.78, rounded to whole numbers as 16:9. This was done to efficiently cater to all the aspect ratios under the same screen by minimizing the presence black bars across the entire ratio spectrum.

Following this 16:9 ratio, screens were manufactured. The resolution or detail (1280×720, 1920×1080) was just a measure of the horizontal and vertical pixel array size and correspondingly, picture clarity.

How does a database handle huge amounts of data that can be retrieved within a second?

The good news is that data isn’t stored in one giant table. It is actually made up of multiple tables.

Tools exist that then link those tables and read the information in them fairly effeciently. Oracle, MySQL, etc handle massive amounts of data pretty easily.  Because these tools don’t actually care what the data is, they just need the reference points, they can quickly retrieve the data. 
Think of how RAM works: fast switching pointers. This is how you get a user’s data out of billions in a table. The software doesn’t need to know that the person’s first name is John, it just needs to know that that user’s pointer is here and it points to that table and then that table points to the next connected bit of data, etc. It is a chain of tables. Again, most of the retreival of the data isn’t getting all of the data, it is just getting the pointer.  That pointer leads to the next pointer, and so forth. Just fast swapping pointers and then one display of the data. 
Big Data as it is termed, is a huge industry specifically for this challenge. It isn’t perfect, but an entire industry exists simply to find better ways to store data so that that pointer chain can be processed faster and faster.

Why do we need IP address to be connected to internet when we have MAC address already?

There are (at least) two problems with MAC addresses:

First, they’re not always unique.

Second, they’re not routable. IP addresses are structured hierarchically, so that if I’m a router on the internet, when data to a given IP passes through me I don’t need to know that specific IP address. I can look at the first part of the address to determine roughly where in the world it should be sent. If it has this prefix, it goes to Germany, but that prefix and it goes to Brazil. (It’s a bit more complicated than that, but that’s the basic principle).

I don’t need to hold a table of all 4 billion IP addresses and remember for each and every one where in the world it is. They’re grouped together so all addresses in this range go to this ISP in that country. Once the packet reaches that ISP, they know which of their customers it should be sent to. So each router only needs to hold a relatively small amount of routing information, in order to be able to route any packet to any IP.

MAC addresses have no such structure. Any given MAC address could appear anywhere on the planet at any time. So to route data based on MAC addresses, every single router on the internet would need to know the location of every single MAC address on the internet, in order to know where to send packets destined for any particular MAC address.

How do Facebook ads know what we searched on Goggle?

When you search things on Google or visit websites, what you’re looking at gets stored somewhere in your browser (Chrome, Internet Explorer, Firefox etc), in the form of what is called cache data.

When you sign into Facebook, you give them permission to just reach inside the jar of recent searches within your browser, and they look at what they can use for adverts, such as products you’ve viewed or even looking at flights for a holiday. They then show these adverts to you hoping you’re more likely to click on them because they know you’ve already searched for that stuff before, and clicking on ads often gives them money.

In short, searches are stored in a big jar of cookies and Facebook has permission to reach into this jar and feed you the ones it knows you like.

How do people who end up in viral videos and/or memes suddenly become rich? Where does the money come from?

The money comes from advertisements.

Take a YouTube video for example. Once a YouTuber gets enough subscribers and views on their videos, they have the option to enable ads. Have you ever seen an ad on a video? Yes, those are the ones.

What happens is that companies makes ads and pay YouTube to show them on their websites (and videos). When a video is posted, one can enable ads to show on the videos. When a viewer clicks the ad, the creator of the YouTuber will get a certain amount of money, and YouTube itself will get a certain amount of money.

In essence, the companies make the ads, pay YouTube to show them, viewers click on the ads, and YouTube shares a small commission to the creator of the videos.

If the video turns viral, that portion can turn quite huge.

Why can’t GIFs be compressed in the same way videos can?

Because then they wouldn’t be GIFs.

A GIF is a specific image format that uses a specific set of techniques to compress an image and represent multiple frames. Those techniques are very cheap to decompress and thus was very good for the early internet when computers weren’t very fast.

Modern video formats use several different techniques together for better image compression, most (all?) of which the GIF image format does not support. They also require significantly more computation to decompress, with several video formats actually using specialized hardware on your device or computer to play back as they could otherwise be too expensive to play back in real time!

The basic explanation of the GIF compression format is that it uses indexed color. A table of up to 256 colors is stored for each GIF with the pixels of the image only storing what color index to use. If multiple pixels in a row use the same color the format just stores the one color index and how many pixels after that use the same color. You can think of it as a digital paint by numbers.

For multiple frames of animation, each frame generally only stores information about pixels that changed from the previous frame, and uses a single “transparent” color for the other pixels. This can often mean much of each frame after the first is almost blank if not much changed.

Then there’s a little information about how long to display each frame and how many times to loop the animation, and that’s kind of it.

It is possible to change or add to the GIF format, looping wasn’t originally a feature for example, but there’s little reason for anyone to spend the time doing so when there are other formats that already exist. It would also require getting browser and content authoring tool developers to support those changes.

How do emails detect and send spam to the junk folder but allow some emails come through to the inbox?

There are numerous ways to identify spam (bulk, unsolicited email).

A lot of spam is identified before it is even accepted by the mail server. A mail server always knows the IP address of the server that’s trying to send email to you. The first line of defense (and the oldest) is to refuse to accept email from places that have a bad reputation. Your ISP or email service provider (ESP) can maintain their own lists and/or can subscribe to third-party lists of “bad” IPs and simply refuse to accept email from them.

Besides outright refusing to accept email, your ESP can go ahead and accept the email and then use a wide variety of tools to determine whether or not to classify it as spam. Many systems use sophisticated scoring systems to “grade” the email. Does it come from a known good or bad IP? Does it contain spammy language? Does it include a link to a known spammer website? Does the website get DNS from a known spammer? Does the email contain a known spammer email address? Have other recipients classified similar emails as spam? Is the sender’s email address in the recipient’s address book? And so on and so forth.

Why is HTML not considered programming?

Because HTML doesn’t do the things that that programming languages do.
It can’t make decisions and it can’t loop.  You can’t give it a list of numbers and have it sort them or find the average, something all programming languages can do. HTML is about displaying text and images and creating hyperlinks. That’s why it is a markup language and not a programming language.
That said, it is possible to embed a programming language like javascript into HTML, and once you do that, you start to incorporate programming tasks into your web pages.