91 karma · joined October 28, 2011
A lot of engineers work on ads teams. I heard it once before, but search is Google's core. Without search, their ad-serving isn't very profitable. Everything else is a moat around it - Gmail, Drive, Calendar, Chrome. Most media companies are built around the advertising model.
I can't say that you're wrong. Enterprise software does generate a lot of revenue and Microsoft does support it fairly well. Microsoft has also had some wins as of late.
A lot of Google's revenue comes from ads, but I wouldn't label it a "single horse". It's really a stable of horses if you're counting YouTube #2 most visited site and the other revenues its generating from it's G Suite, people paying for Drive, cloud services, etc.
I may be blinded by my bias toward Google products, but it's also crazy that I don't use a single Microsoft product at the moment -- I don't boot my old PC with Windows. I don't own an X-Box. I don't own a Surface. I don't use Word or any of the Office software anymore. I don't use Azure or VS Code as my editor as a software engineer. However, I do know a lot of .NET developers.
The best version of the newsfeed was a newsfeed that could be filtered by content type. It was great when I could view just status updates or photos. Facebook serves a purpose, for me, that is similar to my Twitter now -- as a place to consume news from outlets I subscribe to, like ESPN, The Atlantic, Vox, etc.
Facebook's best move, as a company, was the acquisition of Instagram.
More is not always better. I think Facebook, some few years back, had a shot to build a video publishing platform that could have taken some slice of the pie from YouTube, but now they have a helluva lead. They also have broadcast television and have recently introduced easier ways to share content with those you're already connected to.
It looks like the "walled garden" approach to content distribution and ultimately, the views, which drive advertising revenue is really hurting Facebook as a destination site now.
Additionally, did you feel that you had the freedom to learn and apply ML?
For comparisons, we always need a reference point. I believe your reference point is where you currently reside in America. And the misery described in the article may not be as bad as you think given that as your reference.
I probably don't travel within the U.S. as much as you do, but I've traveled to a lot of places, mostly large coastal cities, so I don't know what it's like for those in more rural and less developed parts of America, like the South. However, I've traveled abroad a little bit or have known people that have been to some very different places: Japan, China, Switzerland, Denmark, Australia, Finland, Argentina, Brazil, etc. If you've been to San Francisco recently, our transportation infrastructure is functional, but old, dirty, and not very timely at all. Some of the stations are filled with homeless and the mentally-ill alike. We don't have enough public restrooms, so they defecate on the streets. I don't know how long it takes to repair roads in your town, but road projects here take a very long time to complete and seem to be done only during daytime hours which is the least convenient for commuters. Compare this to Japan where the streets are clean, people don't walk and people receive apologies for a train that departs early by seconds: http://www.bbc.com/news/world-asia-42009839.
I bring all this up, because I feel like we only compare ourselves to ourselves. We seem to have this idea that America is still the best at most of the things that we do. I feel like American ingenuity is lost. What is America producing that we and the rest of the world want? Some of our software that can only exist because we have some great infrastructure in place that allow people to kickstart a business easily and perhaps our entertainment, but I don't see much else.
I'm an Asian-American in my 30s, born and bred in San Francisco. I actually grew up in the inner-city. What that entails is a run-down and under-funded school system made up of all minorities with the exceptions being a few teachers that dared step foot in an urban school in an undesirable part of town.
Have you ever asked yourself or took a look at how the friends in your circle came to be? I ask this only because our social circles are cultivated. We all make choices along the way that shape those that we are surrounded by either by choice of school, employment, geography, or other things. I always say to people when we watch sports, "we're watching the same game, but we can come away with completely different interpretations of what transpired or what is actually happening".
Major cities like San Francisco and New York are made up of transplants. I do software in San Francisco. It's funny when people tell me that San Francisco is "diverse" or when they ask, "where are all the SF natives?". It may be diverse because you see a lot of people of different colors, but in San Francisco, most people of the same color hang out with those that share their skin color. That alone could be telling of how highly cultivated our social circles are. Transplants working in tech in San Francisco are usually of a few backgrounds: white or Asian and highly educated. It is devoid of any significant representation from Hispanic/Latino-Americans or Black/African-Americans and I should also mention other Asian-Americans from backgrounds not Chinese, Japanese, or Korean, like Laotian, Vietnamese, Cambodian. People hardly ever ask me why, but being somebody that went to school with all of the above minorities, I have a fairly good idea, as some of them are formerly friends of mine that whose lives I can peer into on social media. I'm able to infer what their lives are like based on the questions they ask and the things that they think or have discussions about. I can also infer what their socio-economic status is based on these things. What I know, think, and care about compared to them are completely different. I was fortunate enough to attend one of the top universities in the nation. We lead completely different lives and my income is probably several multiples of theirs. That said, despite being in one of the wealthiest nations, we are a country that sees the least economic mobility between generations, save for a few. I introspect my life from time to time and I can glean from my own observations that my social circle is made up of more and more successful people. Some would call it diverse on the basis of ethnic background/color of someone's skin, but if the basis was upbringing and environment, it's probably not very diverse.
While I'm Asian-American and on the outside I may look like my fellow Asian-Americans in tech, very few people understand that I know many Asian-Americans that have dropped out of school and working dead-end jobs with no ladder. I consider myself very lucky and fortunate.
When you or I travel, we don't visit areas of despair or less desirable parts of town do we? I know I don't, so do we really get the complete picture?
I was born and raised in San Francisco and am first generation Chinese-American. However, as a son of working class parents, my friends and I have spent most of our lives growing up through the inner-city school system dominated by minorities -- black, Hispanic, Asian (mostly Chinese, Vietnamese, Cambodian, but no Korean or Japanese). While at the time, I couldn't understand the plights of those I went to school with, looking back, I can now see how difficult it was for them, particularly those who were African-American.
And for those that make it out of the "hood," they face institutional racism. It's like an uphill battle. Even if somebody were to be in good spirits about it, only to be shot down over and over again, they'll eventually become frustrated. They begin to feel trapped in a nation they were born into that they, too, consider their own, but have parents that don't want them and/or hate them.
I know how fortunate I am to be lumped into a group of "Asians" or "Chinese," where in this country, people discriminate across all lines -- be it racial, socioeconomic, attitudes, beliefs, etc.
Whenever I see things like this and seeing people argue that their plights are just "sour grapes", and to, "stop playing the race card", really has no idea. And it's even more difficult to institute change in a system run by the privileged who have no idea what the lives of the poor are like. Nobody choose to be born black or into poverty. It's easy to say, "play the hand that you're dealt, when you've started with aces in the hole, or a favorable hand."
I don't use Bower. I build AngularJS applications and I prefer CommonJS over AMD, where I use Browserify for Node-like requires. Browserify allows me to use npm modules on the client-side as well, which eliminates my use of Bower completely.
I believe in the real world, you are best represented by a body of work and/or the ability to demonstrate that you are capable of tackling the problems associated with the job in which you are considering.
The world of information technologies is vast. There are computer scientists, software engineers, data scientists, test engineers, and many more.
It'd be best if you could narrow down what it is that you're interested in working on. I think a degree in computer science gives you a phenomenal foundation for any of the above, but it doesn't make you immediately in demand, particularly if you're missing a body of work.
I am a software engineer without a CS degree, but I've studied algorithms, some design patterns, and some math relevant to my areas of expertise.
That's my two cents, but I'm sure other people have some useful ideas as well. :)
The trial and error got me to learn a lot of things. In addition to the six things that you've listed, I forced myself to learn VIM as well. You probably use VirtualEnv, which you've forgotten to list.
Anyway, it's always good to see others going down the same road and sharing their experiences. Do you have some links to some of your early projects?
However, had you not taken the road you did, the material you read much later on probably wouldn't have made much sense and probably could have made you turn away from it all right at the start, right?
You get excited when you see results right away. Once you do enough things that begin to make you wonder, "Gee, there's gotta be a way to do this faster or more efficiently." When your curiosity drives you to search for answers is when you delve much deeper into the nuances and the grit of a language that becomes important for scale.
8 months ago, I couldn't write a single snippet of Python. I had a simple site I wanted to build just for experimental purposes, and kept asking my friends for help, until I realized that it just wasn't going to happen.
I initially started with Ruby with the intent of learning Rails shortly after. However, I had read enough posts on HN to have me switch to Python with LPTHW by Zed A. Shaw. I got all the way up to the exercises for building your own game, and, frankly, I just quit. I felt I was ready to dive into Django. Boy was I wrong. There were a lot of things that I didn't understand and I had done the simple exercise on the Django Project site three times!
Anyway, I kept at it. I continued to Google topics I didn't understand. I went through two Django books and numerous YouTube and videos slowly gripping some of the ideas before I found my saving grace written by, none other than, one of the creators himself. After that, I was able to push out a nice looking site in two days with a lot of help from Twitter Bootstrap.
I just want to say that learning by doing is the way to go. It took me far more than 30 days to learn everything that I know, but this is because I had to learn these along the way, too: command line, working with Linux, using a more powerful editor (Vim - can't go back to notepad), version control with Git, and then deploying, which can be a beast of its own.
Keep at it!