I recently started using Google Photos, an example of cloud storage service from Google that stores photos in “the cloud”. Whenever I save a photo on a folder located either on my local hard drive or in a folder that I can see from my web browser, I see a notification on the top right of my screen indicating that it is being backed up to google photos, at which point I can access that image from any of my devices. In order to access these photos, I typically need to sign into either the Google Photos webapp in my browser or the standalone app on my mobile device.
The process of syncing photos to the cloud via Google Photos is similar to other cloud storage services in general as seen in the image above. THrough a google photos app installed on my computer or mobile device, I grant permission for the app to actively manage image files saved locally, and those images are sent through the web via HTML protocols from my client device to a server located at one of Google’s data centers where it is allocated and stored across a variety of servers.
What’s interesting is how the internet affords the ability to both browse content this way, but also varying means of controlling that content through the growing use of apps such as Google Photos.
Addressing this extensibility aspect of internet protocols, Martin says that “The Web architecture and framework of HTML5 now also supports the function fragments in mobile apps…. Apps and mobile devices allow channeling and fragmenting internet/web architecture for commerce, consumerism, and maintaining the focus and attention of users.”
At this point I have thousands of photos backed up and it’s made my life so much easier in that google’s algorithms will sort everything, tag it, and make it searchable. Google says I can upload “unlimited” amounts of photos, offering infinite scalability for me to upload files over the course of my life. It offers anyone and everyone that option, in fact, they want anyone and everyone on the service. We can see this as an instance where Google is using a closed module to blackbox user activity on the open web. Corporations such as google can merge the affordances of a globally connected network, the internet, and funnel our activity and our content into closed services that they control.
I’m old enough to remember a world without internet and smartphones. However, I’m entirely dependent on it. When I think about how my parents did anything in the past, it blows my mind. Getting in contact with each other when you’re not at home (I remember using pay phones and collecting cool historical phone cards). Or how did they ever get around without GPS? I remember many maps in our car during road trips. The list of examples goes on and on: photography, video, communication, banking, etc.
Everything has been revolutionized by the Internet and access to the World Wide Web. As Ron White mentioned in How Computers Work: “The web is changing how we do everything and creating new standards for commerce, education, and communication” (p. 367).
There are many examples we can unpack to analyze the combinatorial and modular design principle we’ve studied.
Coinbase and Cryptocurrencies
For the case study I decided to tackle something that I do not fully understand well but intrigues me: cryptocurrency and Coinbase as the interface for it.
If you’re like me and are extremely unfamiliar with the term don’t worry, it is relatively new, or recently widely talked about. What is it and how does it work? here is the most accessible explanation I found “Cryptocurrencies are digital currencies using encryption techniques that regulate the generation of currency and verify the transfer of funds, operating independently of a central bank. Units of currency are created through a process referred to as mining. In the case of Bitcoin, miners run computer programs in order to verify the data that creates a complete transaction history of all Bitcoin. This process of verification is made possible by a technology known as the blockchain, which is used to create irreversible and traceable transactions. Once a miner has verified the data (which comes in a block, hence, blockchain), they are rewarded with some amount of digital currency, the same currency for which they were verifying the transaction history. So mining Bitcoin, for example, would earn you Bitcoin” (web: Investopedia).
If you haven’t been following the latest tech trends you’ve probably have only heard the term Bitcoin vaguely mentioned but without a lot of explaining behind it. Cryptocurrencies are one of the most intriguing cases, to me, of how the Internet and World Wide Web have revolutionized our lives.
Banking going online has made our lives easier in many ways: we rarely have to physically go to the bank for anything anymore. We can check our accounts, deposit checks and even open accounts without ever setting foot inside a branch or talking to an associate, among other things. Let’s not forget about the ecological benefit of going paperless. It’s brilliant.
But the revolution doesn’t stop there. The creation of cryptocurrencies, that work very much like stocks, is not only fascinating but it also comes with benefits and vulnerabilities
What is Coinbase?
Just like with banks and stocks, if you want to trade cryptocurrencies you need an intermediary. In this specific case, you need the interface or the platform to communicate with the blockchain network that is tracing and ‘mining’ these transactions. That’s where Coinbase comes in: “Coinbase is global digital asset exchange company (GDAX), providing a venue to buy and sell digital currencies, as well as send information about those transactions out to the blockchain network in order to verify those transactions. Coinbase serves as a Bitcoin, Ethereum and Litecoin wallet, too, where the digital currencies can be stored. The application operates exchanges of Bitcoin, Ethereum and Litecoin, as well as other digital assets with fiat currencies in 32 countries, and Bitcoin transactions in many more countries. According to their website, Coinbase has served over 8.2 million customers, and facilitated the exchange of more than $6 billion worth of digital currency”. (web: Investopedia).
How does it work?
In order to use Coinbase you need to create a free account and have a card or a bank account that you will link to your account. In this way, you basically loose the privilege of anonymous transactions since you have your name attached to it: you’re putting your trust in Coinbase the same way you do it with your bank. It doesn’t necessarily have to be this way, and Coinbase isn’t the only platform out there that deals with cryptocurrency, but I believe this can be both an advantage and a vulnerability.
After you set up your account and go through the process of verification, you’re free to check the current prices of three cryptocurrencies: Bitcoin, Ethereum and Litecoin. If you decide to buy either of them you have to follow simple rules set by Coinbase to control the transaction: there is a value limit per week and a waiting time for your transaction to be verified that varies depending your payment method, and you also pay a small fee to Coinbase for the purchase. It also allows you to set price alerts and set future purchases ahead of time. It allows you to buy things with your wallet (wherever it’s accepted) and it also allows you to ‘cash out’ your wallet to your paypal account.
Coinbase works under combinatorial principles because it didn’t invent or come up with technology that didn’t already existed. It uses the same principles your bank app uses, it uses internet, data transmission, your camera for verifying your identity (you take a picture of your license), etc.
Although I have doubts of how stable the market of cryptocurrencies can be compared to the stock market, and the role government control play into this. I also believe we’re experiencing just the very beginnings of this e-commerce world, and that the technology of blockchain can go way beyond financial transactions: “Despite the intricate technology associated with and necessary for cryptocurrency investing, speculation and possession, Coinbase has created an apparatus that makes this process remarkably easy and familiar, almost like buying and selling stocks” (web: Investopedia).
As an end note I would add that if you want to trade cryptocurrency do it wisely. It is still very unknown and new. I personally decided to do it and use specifically Coinbase because it was recommended to me by a high government official that assured me Coinbase were the only platform working and in communication with the US government… just a tip!
Last but not least, I encourage you all to learn about net neutrality and get involved. Here I leave you with a very fun and easy to understand explanation by John Oliver:
Smart tools have made life easier and have been the edge to how companies appeal to their competitors consumers. These consumers are overtime indoctrinated to the use of a specific device, in how they communicate, view social status and think. Smart tools has therefore created smart mobs. Smart mobs? Yes, this consist of individuals who act in similar despite unknowingness with each other. These people unite in ways previously unattainable because they bear devices that posses both communication and computing capabilities.
Their mobile devices connect them information devices in the environment as well as with other peoples telephones. When they connect the tangible objects and places of our daily lives with the internet, handheld communication media mutate into wearable-control devices for the physical world.
The iMessage texting platform has helped individuals coordinate actions with others around he world and, perhaps more importantly, with people nearby. The groups of people using this tool have gained new forms of social power, new ways to organize their interactions and exchanges just in time and just in place.
What if your text message box was blank?
I guess most of us have never really considered that because we were already caught up in using our phones a certain way and not any other way.
The recent affordances of text messaging on new devices cannot be over emphasized. One can only imagine if we still had Prior means of texting without recent adjustments. small screens and then text message notification consuming the whole screen space etc.
Just until a few years ago, text messages where a bore. A pop up consuming almost a large part of your screen to indicate a recipient has received a new message, longer time spent replying, just because the device only afforded you that much. Woe to you if you lived in Africa, then the means of sending EMS, MMS only existed for fancy.
Fast forward a few years later and companies like Apple are changing the view of what text messaging should look and feel like. The new social forms of the last decade of the twentieth century grew from the internet’s capability for many-to-many social communication.
One unique capability of the iMessage, which is fostered by agents such as having the capacity to receive messages from other mobile devices but not in the same capacity as Apple devices.
The driving factors of the mobile, context-sensitive, internet-connected devices are Moore’s Law (computer chips gets cheaper as they grow more powerful).
Built in functions/ combinatorial functions.
Apple mobile device
Ability to link to the web
Link to other applications
Media function; image, music
According to Irvine “This new combinatorial media system is based on ongoing reconfigurations of material technologies, software, content, and the institutions and industries that enable and sustain the internet as such”.
Like every previous leap in technological power, the coming together of these computational and social communication will improve lived in some ways and degrade it in others.
As we learned from the readings this week, Tim Berners-Lee explains that when he thought of the Web, he envisioned ” a space in which anything could be linked to anything”. He wanted this to be a single,global information space. He explains the idea behind this “space” by saying that every information would be labeled and with an address, and then, by being able to reference this information, the computer could represent association between things, and all this could be an open space for everyone to use and share.
As Irvine explains, the web is a protocol layer that works over the underlying technical architecture of the internet. The web is based on different standards and protocols including data standards, network services, HTTP protocols. So imagine all these different layers that make up the web architecture.
While reading about the web, I started thinking about the google search bar. In an article by Larry Page and Sergey Brin, the founders of Google, they explain that they build a search engine that used links to determine the importance of the individual pages on the World Wide Web. This engine was first called, wait for it, “The Backrub”. Soon after, it was renamed to Google. But, how does the search bar work? Since we cannot physically see the process that happens behind this web page, a lot of it remains unclear.
We usually refer to Google by saying that Google developed this program or created this algorithm, and sometimes we forget that behind the name is a big team of software developers, researchers, engineers, scientists, analysts that do all the work.
Back to my previous question, luckily, just by doing a google search on how google search works,(funny, right), we are able to have some answers,
Google uses a special algorithm to generate search results. It also uses automated programs called spiders or crawlers (which scan Web pages and create indexes of keywords and links from that page to other sites), and has a large index of keywords and where those words can be found. The most important part of the process is the ranking of the results when we search for something, which determines the order that Google displays results. Google uses a trademark algorithm called PageRank, which assigns each page a score, based on factors like the frequency and location of keywords within the Web page, how long the web page has existed, the number of other Web pages that link to the page in question. So, if you want your web page to be higher in the search results, than you need to provide good content so that other people will link back to your page, and the more links your page gets, the higher the PageRank score will be.
To make this search even better, we can do specialized searches including images, videos, maps, news articles, products, content in books, scholarly papers etc.. For these searches, Google has created specialized indexes that only contain the relevant sources.
In preparation for my final paper, I’ve been doing a lot of research of cloud computing and virtualization technology. What initially drew me in was the idea of further abstracting the computational process from the user’s viewpoint. The ability to access the full store of applications and features we’ve become accustomed to on a regular PC or enterprise suite, but without the accompanying hardware (or software) constraints. As I’ve learned about this process, I’ve come to see that certain design principles of the web are central to the functionality these technologies.
Cloud computing is an inherently combinatorial design technology. It takes the various software, IT infrastructure, and platform services, and combines them with the extensibility and network-ability of the internet to produce a widely accessible and scalable virtualized environment. The user is no longer constrained by the processing powers “on-site”, as they can access the servers of large corporations with industrial sized computational powers. This has been the key to the Software-as-a-Service, Platform-as-a-Service, and Infrastructure-as-a-Service models that are so dominant today. Anytime you use the Google Suite, Microsoft Suite or Amazon Web Services, you’re connecting to the mammoth server powers of that company.
Modular architecture of the software layer and hardware components is also a central design feature of these technologies, particularly when it comes to server design. In the 60s and 70s, the dominant mode of computing was to use “large” mainframes with dumb terminal ports used to access the mainframe and its computation power. Virtualization is essentially going back to that model, but using the presence of the internet to give modern mainframes the ability to provide an IP address that “thin clients” can connect to and access from anywhere with internet connectivity. This is highly modular as any thin client can access any server, so you’re not rooted to any one device. Easy to switch out. Easy to move. Scalable. Extensible.
In analyzing the role of the web in this technology, one much also reckon with the entire ecosystem of industry relations. Amazon, Microsoft, IBM and other Cloud Computing industry leaders are all deeply embedded in an existent socio-economic framework, and reliant on the older forms of infrastructure, originally built for the telegraph and telephone, to transmit their data. As we move much more of our computing to the internet-based cloud, the owners and operators of these transmission lines become highly important players in the ecosystem.
The internet has made it possible to access processing powers far beyond your own “on-site” capability, meaning you no longer have to go through the traditional effort of installation and maintenance. You can just sign in and access. From a user perspective, the emergence and predicted dominance of the cloud computing enabled Software-as-as-Service and Application-as-a-Service model will have dramatic implications for how we conceptualize and use computers. In his book “The Future of the Internet — And How To Stop It”, Jonathan Zittrain lays out a host of concerns around the “tethering” of appliances and privacy issues that could come out of this model, which is all the more reason to apply conscious design principle to this still growing technology.
This week’s topic comes to the World Wide Web that most of people can’t live without nowadays. Web browser is a crucial tool to connect users with the Web. Most online users, not surprisingly, choose web browsers such as Chrome, Firefox and Safari to “surf online”. Although it seems that all users share the same using experiences of the services provided by these most popular browsers, more customized and “dynamic” interfaces have been built during their frequent usage of the web browsers. This trend derives from user-web interaction, while it also greatly influences the searching results and future using experiences.
Taking my most frequently used web browser, Google Chrome, as an example. In the search bar, I seldom type in the whole URL for viewing a website unless it is the first time I search for the website. Cookies help “memorize” and store my searching history so that I could quickly locate the wanted website by just typing in a part of the URL. For the Wikipedia page “Expectancy Violations Theory” that I have visited hundred times for a course project throughout the semester, I don’t even need to type the domain name “wikipedia” in the search bar. Instead, the website address displays in the drop-down menu with only “ex” typed in the search bar. This would never happen in another computer with different searching experience by other web users. Another customized feature about cookies is the convenience of automatic logins and quick online shopping experience. Cookies kept remembering your online behaviors. Even though you haven’t been to a shopping site for a long time, cookies include what you placed into the shopping cart will be found by the browser. The browser sends the URL to the Web server, and also “sends the information in the cookie” in order to restore updated online footprints left by the users.
Compared to other web browsers such as Safari, Google Chrome has a distinct design feature that allows users to add extended tools, which greatly customizes the way that users receive online information. I’m not able to watch several videos on Chinese video streaming websites because a US IP address is detected, showing that “this video can only be streamed within Mainland China.” I have nothing to do with this using Safari browser. However, Google Chrome provides users great opportunity to install extensions such as “Unblock Youku” to deal with the blocked situations.
Great extension like “Adblock” enables us to avoid annoying ads from different kinds of websites. This inspired me to make a comparison between the regular YouTube main page and an ad-immune YouTube main page based on the HTML source code about how different media sources are displayed in this web page. For the main page without ads, I did not find the according code resources for the GEICO Insurance ads.
I feel that those extended tools act as important parts of the modular design of Google Chrome. Whether the extensions exist or not does not have much connection to the primary design process of the web browser, during which developers build interfaces to the Internet system, cookies, different media content and HTML code resources, etc. However, by adding a process of customization, the existence of Chrome extensions partly affects the changes of interfaces, which enables users to view more expected content while filter useless media content. It provides greater using experience for the user-web interaction and more dynamic, ever-upgraded interfaces.
Last time when I was chatting with my friend, he introduced me a webpage called rabbit, which is a platform with the screen share function that enables users to watch videos together, and on the webpage, users can have video, audio or text chat at the same time. I found this webpage cool and wanted to check it with my other friends. However, when I opened the page with Safari, this page showed up:
Later on, I checked for the reason for that, and found out it is because Safari does not support WebRTC, which is the technology Rabbit uses for audio and video. I was surprised as this is the first time I see web browsers are actually different from each other. Before that, web browsers are just a sort of “invisible black-box”, which I use to explore and gain information but never actually paid any attention towards it.
When I take a closer look into the technology, I come to understand WebRTC, or Web real Time Communication, is “a set of communications protocols and application programming interfaces that enable real-time communication over peer-to-peer connections.” However, Safari uses a different implementation of the similar function, which is not compatible with Rabbit. Thus, the signals between Rabbit and Safari is not “translatable”, while Chorme and Firefox or other browsers support WebRTC thus Rabbit can work on these browsers. If the user really wants to access Rabbit on Safari, then a plug-in called “Skylink” can help, which can translate the digital information Rabbit needs into a language Safari can process.
This lead me to think further about what actually is a browser, and how the browsers are different from one another. From the readings I understand that web browser is the application for retrieve, present, and traverse information sources on the World Wide Web. Specifications of webpages are maintained by using W3C organization standards. When the HTML text file is received, the browser decodes the URLs included in the HTML file, and then presents the text, graphics, sounds and video files included in the sites. Browsers differ from each other by using different “layout engines”, which is used to interpret the instructions given by the webpage. Chrome and Safari uses the same layout engine called webkit, while Firefox is using Gecko and IE is using Trident. Layout engines also are updated to understand new versions of instructions, such as html5 and css3. Thus although the layout of a webpage looks the same presented by different browsers, it is actually interpreted in different ways.
Garsiel, Tali, Paul Irish Published: August 5th, and 2011 Comments: 14 Your browser may not support the functionality in this article. “How Browsers Work: Behind the Scenes of Modern Web Browsers – HTML5 Rocks.” HTML5 Rocks – A resource for open web HTML5 developers. Accessed November 29, 2017. https://www.html5rocks.com/en/tutorials/internals/howbrowserswork/.
From this week’s reading, I have learned the history of World Wide Web and some basic information. The invention of World Wide Web can be also credited to the development of computer, hypertext, and internet. Some projects are aborted because they are too ahead of time, for example, Doug Engelbart’s idea of using electronic mail and hypertext links with mouse in the right hand and a five key piano-chord keyboard in the left hand to increase HCI in a natural way. But as Tim Berners-Lee mentioned in Weaving the Web, the invention of World Wide Web was just on the perfect timing. It first came out as ENQUIRE, a CERN project. In his original plan, a space in computer should be created in which people can link anything that can be linked. And it was like the following photo, and with more widely use of computer, Tim Berners-Lee developed the first web browser World Wide Web with his NeXT computer.
Case study: Uber
As one who almost uses uber everyday, the cellphone Uber app for me is the main interface. As a client software, Uber also interacts with the other servers.
Geolocation is of great importance in Uber’s system. The Uber app for iOS uses the CoreLocation Framework to locate a user’s device. The CoreLocation framework provides classes and protocols to configure and schedule location delivery and send location events to the server. Besides, the Uber app for iOS also uses MapKit to provide driving directions. As the photo shows, the users of Uber can see the point-to-point direction and real time location. Now Google Map also offers integration to Uber.
Message & Phone call
The Uber app is linked to our cellphone carriers. When you order a ride, Uber will send you few notifications like this:
When the uber drivers cannot find their passengers, or the passengers cannot find the uber drivers, they can make a phone call or text each other.
Bank and Payment system.
The Uber account is usually linked with users’ bank account or Paypal account. When you choose to pay with your credit card, Braintree, one of the leading company in the mobile payment market will help to make transactions safely. When you choose to pay with Paypal, the users can pay directly from their Paypal account.
Tim Berners-Lee, Weaving the Web. HarperSanFrancisco, 1999.
Kate Abrosimova, Building an app like Uber: What is the app made from? Retrieved from: https://www.linkedin.com/pulse/building-app-like-uber-what-made-from-ankit-kumar/
Ron White, How Computers Work. 9th ed. Que Publishing, 2007. “How the World Wide Web Works.”
Janna Anderson, and Lee Rainie. “The Future of Apps and Web.” Pew Research Center’s Internet & American Life Project, March 23, 2012.
To do an image search on Google, one way is to type “Google Images” into the searching bar and then click on the hyperlink of “Google Images” from the searching results. This hyperlink is an interface connecting us with another computer. Another way to find the website is to type its URL: https://images.google.com/ . “http” shows that Google Images is using HTML on the World Wide Web.
I uploaded an image into the searching engine and it quickly showed me the basic information of the picture as well as a guess of the picture’s theme. After another click, the website showed me pictures that were possibly related to the one I uploaded. The browser is the interface covering the complicated processing of matching an image with another and keeping us away from what is in the blackbox.
In this procedure, the main technology Google Image used is Convolutional Neural Networks. This technology can help a computer understand that when an object shows up in different positions of pictures, it is still being the same object (i.e. translation invariance). When the engine is searching background information of a picture, it will first split the picture into small pieces and give them a sequence of index number. It will then compare the sequence with other sequences already existed in its data base and find the similar ones.
The idea of Convolutional Neural Networks is the same as what Lee said in his book — “A computer typically keeps information in rigid hierarchies and matrices, whereas the human mind has the special ability to link random bits of data”. And it is this sentence that interests me the most when doing the readings this week. In fact, human brain is the result of billions of years’ evolution from fish through amphibians and reptiles to mammal and ultimately to human beings. The Internet is also on this way: from the original single software to a metamedia platform. I guess that in the future, the Internet’s function of working as an interface will be highlighted and applications will disappear from the desktop and are inserted into browsers as plug-ins. In this way, the Internet will perform like a human brain and the interface to almost anything in the world.
In the traditional way for a web browser to display pages, our browser software would send our request, connect ISP, get IP address from DNS and then send our request to proxy server, where web pages is being stored. Then the server would send back HTML file to browser’s IP address with an instruction for those sites to send graphics, videos contained in URL to PC as well. The browser would then download CSS as page required. But the process of request for to server and getting back HTML, then download CSS is in sequential and thus take time.
For facebook, they create a new modular solution called BigPipe. They divided face book web page into multiple chunks called pagelets. The home page consists of several pagelets: “composer pagelet”, “navigation pagelet”, “news feed pagelet”, “request box pagelet”, “ads pagelet”, “friend suggestion box” and “connection box”, etc. so the HTML document that being send back is different part by part here. After receiving request from web browser, the server can send back unclosed HTML, so for each chunk’s CSS downloading and steps after can be done parallel in the meantime, and that would save half of time to display user a web page.
So all these chunks are independent from each other, the display of each part can be done separately. However, when getting URL of other chunks, the browser would look in the folder to check out cookie information. And because other parts is being downloaded, cookies would keep your information so the website can recognize your ID number, and provides you latest information according to your userid. Then the web page would become a combinatory of each chunks as modular and can work separately, the operating system would not need to combine each part information as a whole body to work and fits each other.
To address the scalability problem with such big data, facebook also used disaggregated network, so the software and hardware can be separate and allow compute and storage to be separate in different cluster. So that the network latency and bendwith would be same or better than local disk.
But I am not understanding that as HTML5 is now promising, it now has new multimedia elements and semantic elements, and better at handle unknow HTML information to browser, and storage function will be more powerful to replace cookie, would BigPipe not be useful and competitive here or being replaced?
and I am not that understanding the opposition problem between app vs world wide web, why the app is so deviate from the world wide web since these two feels like interact between each other.
Reference: Ron White, How Computers Work. 9th ed. Que Publishing, 2007. “How the World Wide Web Works.”
Janna Anderson, and Lee Rainie. “The Future of Apps and Web.” Pew Research Center’s Internet & American Life Project, March 23, 2012.