Tag Info

Hot answers tagged

90

The correct answer "because different languages have different strengths " has already been stated. But let me provide some more detail on why: C++ C++ has the main advantage of being the fastest of the lot. Not necessary because Java and Python are slow, but because in C++ you have more control about how things get executed. For example, if you are ...


39

For the most Google uses a Perforce setup. However, there are internal tools for getting other tools like git to work on top of it. (How they accomplish this I don't know.) Large, open-source projects like Android and Chromium have separate repositories however. Built on top of Perforce are a lot of stellar internal apps. For example, there are tools to ...


35

Is Java "dead in the water" Absolutely not. Far too many companies and people have invested in building Java software for Java to be dead in the water. What exactly, or even approximately, are the legal ramifications? On the face of it, there are two significant things alleged by Oracle's lawsuit: The copyright violations are difficult to get ...


27

Things you should know Google wants to hire you! The life-blood of any software company is its employees and Google is no different. It's looking to hire the best and the brightest and the people conducting the interview(s) want you to succede just as much as you do. Google will do it's best to evaluate you as accurately as possible. It's their job. ...


27

The short answer to "What's the state of Dart?" is: it's in Technology Preview. That's a special way of saying, "we launched early so we can open source everything and work in the open." "Technology preview" also means "we're not even in Alpha yet, we have a lot of work to do, but there's enough there for you to play with and give feedback." Internet time ...


25

Well, ... human memory and instincts work faster than Google. But then again, we cannot commit everything to memory (human brain just doesn't work that way - you remember in the lower circles only the things you need momentarily). Google however is great as a replacement for paper books, manuals, everything really. And makes searching those (like you would ...


25

You can use the + or - signs to add or remove weight for a search term. However the best place to search really isn't google at all, it's StackOverflow A few google examples anyway: +C for articles where the letter C stands alone +C -C++ for C articles where there are no references to C++ +"C Sharp" for articles with weight added to a grouped term


24

I have been using go for about a year now, and the language has continually improved since then. Things are changing, improving, (somewhat) stabilizing, and generally amazing me in their innovations (e.g. gofix). It is most certainly not dying, and they seem to be putting quite a bit of effort into it. The Google code page shows 17 people contributing to ...


22

Here is a video explaining how it is organized: Development at the Speed and Scale of Google Ashish Kumar presents how Google manages to keep the source code of all its projects, over 2000, in a single code trunk containing hundreds of millions of code lines, with more than 5,000 developers accessing the same repository.


21

Consider the meta-point: what is the interviewer looking for? A mammoth question like that isn't looking for you to waste your time in the nitty-gritty of implementing a PageRank-type algorithm or how to do distributed indexing. Instead, focus on the complete picture of what it would take. It sounds like you already know all of the big pieces (BigTable, ...


21

Personally I've always googled "C programming", and then whatever topic regarding the language that I'm curious about... That is... Until I found out about stack overflow. Now I just use the already existing language tags there, and search within them. If noone has answered any question on the subject of matter (quite rare but it happens every now and then) ...


19

Different studies have found different answers to this question, usually in the 10-fold to 100-fold range. The one I trust most is the classic book Peopleware. They reported on a set of coding wars that they had between programmers from different companies, with the programmers in the corporate environment. They found that factor of 10 differences between ...


18

Commoditization of complements - Hardware is useless without software, so if your company sells hardware (like IBM or Novell), it's good for you if the software is free (as in beer) to the customers. The complement could be anything - Hardware vs. software, software vs. services, cars vs. fuel... Chris Anderson's Free: How Today's Smartest Businesses Profit ...


17

The Google AJAX Search API was deprecated on Nov 1, 2010, in favour of the Custom Search API. The AJAX Search APIs contained Web, News and Local search among others, but when people referred to the AJAX Search, they typically meant Web search. You can read some idle speculation on why they retired the AJAX search on the official Google AJAX APIs Group, but ...


17

Well, firstly, most Google products are older than GWT. You don't re-write a perfectly good product every time a new library is released. Secondly -- and this is really my personal opinion -- is that GWT is to Javascript what ASP.NET (classic) is to HTML. It's great for simple interfaces, but if you need to do anything complex, it can be a bit of a pain. A ...


15

1 language is enough Maybe one language is enough to complete a number of different tasks adequately, but different languages have different strengths, weaknesses and abilities. Since google most probably program for a large number of different situations it's a case of horses for courses, the best tool for the job.


15

Goodwill Training ease for their products (tutorials don't fail because of misplaced file) Net traffic analysis


14

It really depends on the project. For example one reason that Chrome is open source is to allow allow a larger community to improve the browsing experience, which in turn leads to more searches, which leads to more AdWords for Google. Android is open source because it leads to more installs, which leads to more apps on the Android market. Another reason ...


13

Sun Microsystems created Java. Oracle bought Sun, and thus they became the owners of Java. Java (JVM and JDK) is open source, and you are free to use it. This is under the GPL though, and if they do any changes to the actual JVM or JDK, they will have to release those changes. I'm not aware how App Engine works, and why Google would be in trouble, if they ...


13

I think this is looking at it slightly myopically. What is integral to effective and efficient software development (and almost every other profession) is research. Google just happens to be the current tool of choice for getting access to information we now most commonly use for this research. Best practices for reseaching include: Verify by finding ...


12

I am the technical lead for Caja. Since it's initial release, we've been iterating on the design and implementation of Caja. With each iteration we've made the input we accept as input larger (and closer to plain-old-javascript), and our output faster and more debuggable. During our testing we found that the lack of these features made adoption by ...


11

Reasoning about whether inheritance (or any single feature, really) is necessary or not without also considering the rest of the language's semantics is pointless; you're arguing in a vacuum. What you need is a consistent language design philosophy; the language needs to be able to elegantly solve the problems that it's designed for. The model to achieve ...


10

For the most part it's good though I think it has bought about a deterioration in problem solving skills among many programmers. Before the internet if you came up against a problem you'd not seen before you pretty much had no choice but to investigate and solve it yourself and if you couldn't come up with an answer them you had to work around them. You ...


10

Chrome's new version adoption rate is really fast because of their automatic upgrade. Way faster than IE and even quite a bit faster than Firefox. Generally, if you are supporting the latest stable build of Chrome, you should be fine. It is literally only a matter of days or weeks before a new stable version almost totally replaces the old. Edit: Graph ...


10

What it does, besides using mathematical formulas (for which, you have to be good at math), is using the native technologies of web coming under HTML5 and CSS3. I recommend that you read these items: CSS Transitions CSS Animation Timing Control for Script-Based Animations


10

Among the hats I wear is overseeing packaging and installation of the software and the development tool set for one of my company's business units. We build everything (almost; see below) from source from scratch nightly using a custom-built, fully-automated process. Anything not burped out by the build process doesn't ship, no exceptions. We do this for ...


9

Java will stay around, but I think these issues will lead Java down a road away from Open Source. It will start to be more closed like C# and the .NET languages with how Oracle is suing Google even though it is "open source" (for now). And Google created Go, which with this issue over Java may lead them to eventually recreate/modify Android to use Go as ...


9

Let's see. You graduated in CS, without good grades, and your goal is to get hired by Google or create another Google. I sense a mismatch between desire and reality. My sincere advice is to not worry about your desired end result. Instead try to find something you are excited to be involved with, and do that. Your excitement will solve your motivation ...


9

Recently Google invested another bit in Go and now Go runs on AppEngine. Another sign that Go is alive and kicking. Upgraded from a comment by popular demand :)


9

Yes. I think not allowing inheritance is fine, particularly if your language is dynamically typed. You can achieve similar code reuse by, for example, delegation or composition. For example, I have written some moderately complicated programs--okay, not that complicated :)--in JavaScript without any inheritance. I basically used objects as algebraic data ...



Only top voted, non community-wiki answers of a minimum length are eligible