4 ms·
It seems like everything they do are CRUD apps, in the sense that they are concerned with creating, updating, reading, and destroying database records. They are
by Aqueous 13y ago
It seems like everything they do are CRUD apps, in the sense that they are concerned with creating, updating, reading, and destroying database records. They are just massively parallelized on the backend to deal with all the traffic.
Sometimes I wonder what all these engineers do every day. Their main apps are not getting exponentially better, and they have fewer of them. Why is all this algorithmic knowledge really needed? Do they spend all day optimizing or engineering and planning new features?
Not trying to insult Google, but I'm not seeing a ton of new features that would justify this kind of indepth theoretical knowledge. The ability to actually code, to do so efficiently and quickly, and to properly unit test and profile it, seems more important than any algorithmic knowledge. Mastery of the toolchain and the language, and that comes down to - "What have you produced?"
Maybe this is why Google hasn't had a new hit product in what seems like awhile. It doesn't need one as long as they maintain their position as search leader, but it doesn't seem like they have one.
- cromwellian 13y agoI think this is being relatively unfair in assessment. Google hasn't had a hit product in a while? Search and Ads are dominant. Android is the #1 mobile smartphone OS with 80% of the market. Chrome is now the #1 browser. Google Maps is the #1 mapping application. Gmail is now #1 in active users. G+ now has 190 million active posters now monthly now (Twitter only has 110 million active posters) YouTube is the top video site. Most of these apps listed above are not CRUD apps. The service based ones have significant and non-trivial data processing on the backend, lots of machine-learning, or algorithmic data processing. Google apps have been getting better over the years, but Google updates them almost continuously and incrementally because they are web based, and so most of the changes go unnoticed like a frog slowly being boiled in water. Is Google Search the same as it was 5 years ago? No, it has Google Instant, voice search, Knowledge Graph, direct answers, better spam filtering, it's index is far fresher, etc. For example, just the interactive chart knowledge panels (https://www.google.com/#fp=9a975e048e4bd6d6&q=population+of+india https://www.google.com/#fp=9a975e048e4bd6d6&q=population+of+...) Google Maps has gotten radically better, and the latest beta maps is probably the most complex and sophisticated web application ever engineered. Google search within G+ and Drive actually does object recognition with neural networks. (http://googleresearch.blogspot.com/2013/06/improving-photo-search-step-across.html http://googleresearch.blogspot.com/2013/06/improving-photo-s...) This is a huge improvement in image search, and most people are totally unaware of it. It just works and they don't notice that it found it image without even needing descriptive text or tags. Google apps are slowly getting smarter each and everyday but there's no "Jobsnote" to laud them, so the improvements are invisible.
- jaredsohn 13y ago>Google apps are slowly getting smarter each and everyday but there's no "Jobsnote" to laud them, so the improvements are invisible. They promote many of these changes via Google I/O (although I think the audience may be smaller).
- colanderman 13y ago> most of the changes go unnoticed like a frog slowly being boiled in water. Believe me, I notice. GMail and GMaps get slower and slower every day. I can't actually use GMail anymore; clicking anything takes several seconds. Wasn't this way in 2005, and I had a crappier computer then.
- deleted 13y ago[deleted]
- Aqueous 13y agoI would consider Maps, Gmail, and G+, CRUD applications. What does it take to not be a CRUD application? I'm not sure. I think every web-based application in which enormous amounts of data are stored and manipulated qualifies as a CRUD application, even if they involve lots of intelligence and batch processing on the backend. Many of them are CRUD with a Big "R," as they mostly involve consuming data. Maybe my definition of CRUD is too broad. Knowledge graph and instant search are amazing feats, but with thousands of engineers working all day at Google, each of these products seem to be only incrementally improving, as you say, and I would almost expect quantum leaps forward in terms of new products. But Google probably has all sorts of things in their pipeline. These products were already incredibly impressive, as well as huge hits, and I use them every day, so I'm not really dissing them so much as I'm noticing a lack of new, hit products.
- cromwellian 13y agoYour definition of CRUD is incredibly broad and covers just about any application that reads or writes anything to a datastore, regardless of whether the datastore is ACID or some custom storage system for something like a huge graph of geometric data. Do you consider Quake a CRUD application? How about GwtQuake, a web-based version that consumes big BSP files? What about Minecraft? CRUD to mean has traditionally meant traditional database applications, CREATE, UPDATE, and DELETE, after all come from SQL keywords. These apps are primarily table oriented. Google Maps isn't even close to being a CRUD application in the traditional sense. How many CRUD applications have you worked on that used Octrees? And why does "web based" make something CRUD? Is a native Android app that does SQL RPC calls and just manipulates a typical entity-relationship database quality as CRUD? Anyway, back to hit products. Google Now was released only 1 year ago and is a new hit product. How many new hits per year do you want? ;-) Also keep in mind that Google has moved from launching lots of tiny apps with separate branding, to unifying their various platforms and implementing things as features across app. For example, the neural network based image search is a really a service that appears inside of Drive, G+, etc, just like Hangouts appear in multiple apps, as well as Google Local data. The general thrust is to get away from launching an array of dozens or hundreds of sites, and to make stuff just "work" within the apps you use already.
- mahyarm 13y agoWebRTC, Hangouts, Chrome, Android, distcc, etc. All very useful non CRUD projects. Google+, the search engine, analytics & advertising have 2nd order projects that are not CRUD.