Jump to content

Wikipedia:Reference desk/Archives/Computing/2019 January 21

From Wikipedia, the free encyclopedia
Computing desk
< January 20 << Dec | January | Feb >> January 22 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


January 21

[edit]

Server-side web programming.

[edit]

I was looking at history of ASP.NET released by Microsoft Jan. 2002, which replaced ASP released Feb. 2000. I believe 1 of the features that this has that client-side web programming doesn't have, is geo-IP. Today, if someone were to Google "pizza restaurants" what they see will be proportional to the city/area they live in. How far back would you have to go - where if someone Google'd pizza restaurants, it'll be the same for anyone worldwide so just pizza restaurants websites in general? Probably before 2002 or 2000? Heh. 67.175.224.138 (talk) 16:59, 21 January 2019 (UTC).[reply]

You're conflating two independent concepts. First, there was a historical business decision by Google (and other search engines) to provide location-based and personalized search results for a given query. Second, there are a large variety of technologies that existed, and some that were specifically invented, enabling these kinds of localized and personalized features. You seem to have stumbled on one individual technology - ASP - but it is just one tiny part of the puzzle, among the thousands of free and commercial software pieces that are part of the implementation of a modern web experience.
The technology to localize a user predates its use by Google; it predates the widespread use of the commercial internet. As one example, we used zlocate to locate individuals and computer-services, down to the accuracy of which desk they were sitting at - and that technology has been around since the early 1980s. It is an absolute certainty that many among our cohort once ordered a pizza via zwrite.
A modern web server uses many technologies and data points to locate a user, including but not limited to the user client's IP address. We have an overview article: Geolocation software.
Google commercialized localized search-results, and made these concepts very famous and omnipresent, but they hardly invented them.
As far as studying the history of how Google's public web search engine would have responded to a query at various times in history, this is a challenging question: search results are very complicated and change based on many properties. It is likely that even the earliest commercialized versions of Google sometimes returned different results for the same query. If you're interested in the history of something very specific, like when they hired an engineer to focus on a particular algorithm to localize search results pertaining to take-out food ordering, ... they don't make that kind of information public! Your best chance is to meet some seasoned old Google engineers and try to get them to tell you their anecdotes and apocrypha.
Nimur (talk) 17:24, 21 January 2019 (UTC)[reply]
Okay if there's multiple types of server-side web programming, what's something Apple/Mac makes as opposed to Microsoft's Asp.net? Yeah, I figure Google just uses the IP addresses given to them and I didn't think that kind of stuff was possible before server-side web programming came along. 67.175.224.138 (talk) 18:01, 21 January 2019 (UTC).[reply]
There's a pile of concepts mixed into your questions, which need to be taken apart.
Apple/Mac is a computer/OS.
Microsoft produces an OS too, but asp.net is a web application framework.
And there's Server-side scripting, Static web-pages and Client-side scripting (for delivering dynamic web-pages).Doroletho (talk) 19:02, 21 January 2019 (UTC)[reply]
I'm talking about the company Apple/Mac. If Microsoft created Asp.net, what's the other equivalents that Apple/Mac has made? 67.175.224.138 (talk) 19:04, 21 January 2019 (UTC).[reply]
Swift (programming language). 209.149.113.5 (talk) 19:59, 21 January 2019 (UTC)[reply]
So Swift 1st came out summer 2014, so between 2000 and 2014, Microsoft's Asp.net was the only monopoly? Although it seems PHP/CGI predates ASP. 67.175.224.138 (talk) 21:22, 21 January 2019 (UTC).[reply]
Swift is not really in the same category as asp.net. Asp.net is a framework. You can run your code in it. And this code can be in various languages.
There were other competing web-frameworks back then when asp.net was launched. Just take a look at the article I liinked above. Doroletho (talk) 21:41, 21 January 2019 (UTC)[reply]

Yes as Doroletho has said, you seem to still be confused by many things. For starters there's no such thing as a company Apple/Mac. There is a company called Apple, who have released various products under the Mac brand name.

And choosing Apple is just weird anyway. I'm not aware they've ever actually had a significant presence on the web server market. Linux has probably been the dominant OS for a long time with other Unix like operating systems besides Mac OS (actually *BSDs especially FreeBSD and maybe even Solaris (operating system)) probably being more common than Mac OS. They aren't listed at Usage share of operating systems#Public servers on the Internet for example. Okay unknown Unix is very high in one of them but this ref [1] explicitly notes less than 0.1%. On [2] they are 0.03%. In [3], they don't show up and other seems to be too small to show up I think.

Okay this is recent data, but I'm not convinced it's ever been that different. Note that as I said, Linux has probably been more significant than Windows on web servers for a long time. I wouldn't be surprised and some of the sources seem to support, if specific releases (including all versions of that release as with Windows) have been more popular than Windows.

In addition, whatever presence Mac OS X did have, AFAIK and again macOS Server seems to support this, Apple was primarily providing open source tools for their web server and framework, that article Apache HTTP Server and PHP. While it doesn't mention the PHP intepreter, it seems quite likely it was the Zend Engine. Note that you could have run Linux or later Windows on your Apple server, it would seem obvious why Apple would have limited interest in working a great deal to support this config, especially not to the extent of developing web frameworks on other OSes for it.

Nil Einne (talk) 01:45, 22 January 2019 (UTC)[reply]

BTW, this doesn't mean Apple has no interest in supporting such configs. For example, per the earlier linked sources, Apple has seem to be supportive of efforts by IBM and others to develop web application frameworks that use or support Swift. Nil Einne (talk) 02:19, 22 January 2019 (UTC)[reply]

I see Asp.net frameworks are listed as a type of language under examples of server-side scripting. Prolly a mistake considering the language equivalent would be C# (languages that those frameworks use). What about MVC - Models-View-Controllers, is that something in multiple web application frameworks, so it in itself is not a web framework? Btw, my whole question on Googling pizza restaurants on not returning by geo-area, is when do we know for sure when the Internet was so primitive that such a filter was not possible. Thanks. 67.175.224.138 (talk) 04:46, 22 January 2019 (UTC).[reply]

Your question remains unclear but the answer is probably never. TCP/IP itself and the limits of latency and sensible network design enables limited geolocation, if someone can be bothered. In some ways it was probably easier back in the days where people still weren't worried about running out of IPs and so large blocks were handed out at a time and the address space wasn't so fragmented. I suspect this isn't completely theoretical either, I'm sure back in the 1970s someone from UCLA or whatever must have set up their FTP or whatever site so if someone from UCSB or whatever connected they would get different content or some sort of different message. Nil Einne (talk) 05:51, 22 January 2019 (UTC)[reply]
I found [4]. While not exactly long ago (1992) and it wasn't different content but whether or not you could access the network (and the reason was technical), it does IMO illustrate the point. BTW, while people have a tendency to think of bans in one direction, they are often two directions as sort of illustrated in the discussion. For example, if China decides to completely disconnect from the rest of the internet, this doesn't just mean people in China can't access sites outside of China, it also means people outside China can access sites hosted in China. (Unless it's a less completely ban.) Nil Einne (talk) 06:19, 22 January 2019 (UTC)[reply]
As a final comment in case there remains confusion given the original question, it's worth remembering that your whatever server doesn't even have to be directly involved. You could route the traffic to different servers which themselves will serve different content. Nil Einne (talk) 06:49, 22 January 2019 (UTC)[reply]
I think the originator of these questions would benefit from a general-purpose primer: here is an article called "How the Web works". If you prefer watching videos, the authors have also produced The Web, Demystified.
Hopefully those will give the reader a broad introduction to the core concepts. A solid understanding of these fundamental concepts is an absolute prerequisite before we try to explain a specific technology like ASP or a complicated feature like geolocation.
It is important to realize that these complicated technologies have evolved over decades. It is hard to completely and correctly summarize them in just a few sentences.
The video series I linked is a great introduction for people who don't already understand the technology. For people who do already know the technology, the videos provide a great reminder: more than ever before, the technology details are very opaque, hidden behind many layers of software to improve the user-experience while hiding the implementation. It can be hard to explain exactly how web technologies really work when a modern web experience software package intentionally hides all the details.
Nimur (talk) 17:19, 22 January 2019 (UTC)[reply]