1,252 karma · joined October 22, 2010
I help mostly non-technical founders, teams, business owners to turn their ideas into a working software product (MVP and beyond). We usually start with an idea or concept then analyze, dissect and prioritize the features of the would be product. Along with building the product I also build a team around it that can take over and continue working on it as needed.
Tech stack: python, Django, JavaScript, VueJS, android
http://marai.me/ https://www.linkedin.com/in/atleta/ http://noispot.com/
But developing for Symbian was convoluted, very painful and slow. And it slowed down Nokia itself not to mention the 3rd party/external app developers. There was no reasonable way to fix Symbian as these issues stemmed from the very foundations. One of them being memory management, the other probably cooperative multitasking and callbacks. But the memory management thing was all over the code (think string handling, so everywhere) and it made using existing software hard too. Linux would have been the way to go, one way or another. Sure, they would have to have rebuilt most things for that platform but e.g. webkit would have been a no-brainer and they could have used a lot of existing open source software.
Sure, there were Symbian phones that could functionally do almost anything smartphones can do now (and do more than the first iPhone) but those weren't for everyone and those didn't use touch screens so there were multiple form factors. Like the full keyboard communicators (9210, 9300/9500), the Blackberry clone (E61, I think), the slide keyboard (7650?) and then all the non-Symbian phones (S40 OS, IIRC). And, of course cameras were new and shitty so not every phone had them.
Now this could have caused a problem in itself and what the article says about the organization could also cause problems but (I keep saying this when this topic comes up) the real problem was that the Nokia management was too convenient/coward and didn't dare to switch away from Symbian. Especially since they have bought out Erinsson and Sony (again, IIRC), their former partners in the Symbian consortium in ~2004/5.
There were eperiments with a linux based phone OS around that time. They created the Nokia 770 "internet tablet" [1] which was this PDA-like touch screen device with a landscape screen layout, a pen, and a removable front cover. Obviously it was an experiment (and later followed by the 810 then the 900, the latter being a phone). However no one in the management was brave enough to give a linux phone a go. Especially not committing to a strategy to switch over to linux. Symbian phones were selling great, Nokia was the market leader and you can't really do better than that...
I remember, at one point, one team in the Helsinki office of NRC (Nokia Research Center) was coming up with the idea of creating a "unified architecture" (called the "Grand Unified Architecture") where they would create a uniform platform around the 3 operating systems: a linux based one, Symbian S60 and the (non-Symbian) S40. The genius idea was that they'd create a HAL (hardware abstraction layer) then above that would be one of the 3 OSs and above those would be a uniform API that could be used by all app developers. This would have been a great strategy to side-step an actual decision but other than that didn't make any sense, really. (Maybe you could argue back then that the S40 hardware was not capable of running linux, but there was no excuse for trying to keep both Symbian and linux while hiding them below a uniform API.) So the switch to linux never happened and Symbian was a pain in the ass to develop for. Just concatenating two strings took several lines of code in their C++-based API that hasn't even looked like actual C++. And this made developing in-house software slow and made 3rd party software pretty scarce.
Nokia also had an aversion towards touch screens. One of the reasons must have been that back then only resistive touch screens were available (I think the oroginal iPhone was the first phone with a capacitive one, i.e. one that was an actual touch screen and not a press/push screen). The other reason must have been Symbian (and the S60 skin) that was really not designed for touch screen and was hard to develop.
So Nokia just continued to enjoy being the market leader with the management not taking the risk to try to switch direction. And then the iPhone came and then Android came (who, after seeing an iPhone demo, very quickly changed direction because at first they thought they were competing with Blackberry, so their UI was similar to that and maybe Symbian).
You can punch up as much as you want, things are not going to change without people lowering their standards. And once we accept it we can easily force politicians to do the right thing. The tragedy of the situation is that everyobody is complicit and most people will not accept that they themselves are. Sure, everybody but them .
And I'm not saying this to blame anyone. Blaming doesn't make sense. Identifying the causes and what needs to change does.
Assuming that the advance made in the meanwhile in AI doesn't eradicate the whole thing. I mean say some company builds a personal assistant for managers to supplant secretaries, they become the go-to name and then Google buys them in 2-3-5 years. Unless Google's AI becomes so good in the meantime that you can just instruct it in 1-2 sentences to do this for you.
1. they don't have the resources to build their own technology and probably never will
2. even if they did have, the best they could do is come up with something very similar to OpenAI's GPT, i.e. a (somewhat) generic AI model. This means that OpenAI can also easily compete with them.
All these companies are doing (if anything) is that they test the market for OpenAI (or Google, MS) for free.
No, what Metcalfe's law assumes is that the value of the graph is proportional to the number of edges (not their square). And from that assumption and the fact that the graph is fully connected follows that it's proportional to the square of the number of nodes. (Because you can have (n-1)*n/2 edges with n nodes in a fully connected graph.
And hence, the Reiser quote above is similar but it emphasizes something else: it states what Metcalfe's law (I think) uses as a premise (or implicit claim) that the value is in the connections. Because it's not necessarily a fully connected graph.
Edit: originally I've given (n-1)*2/2 as the number of edges instead of (n-1)*n/2.
The other problem is, of course, is that all the historical examples (the data) are too few to generalize from while we do see how these examples are different from each other. As technological evolution progresses, automation gets more and more sophisticated, it can replace jobs that require more and more skills and talent. In other words, jobs that fewer and fewer people were able to do in the first place. This means that the bar for successfully competing in the labor market gets higher and higher and it will get to a point where a substantial number of people will just be plain uncompetitive for any job.
Or, at least that was one of the morels until LLMs were invented. (Mostly everyone thought that automation would take over the opportunities from the bottom up in general.) Now it seems that indeed white collar jobs are more in danger for now. But I digress.
The point here is that past examples are false analogies because AI (and I moslty mean future AI) is funcamentally different from past inventions. It's capabilities seem to improve quickly but we're mostly stuck with what evolution gave us. (We, as a species, are evolving but it's very slow compared to the rate of technological evolution and also we, as individuals, are stuck with whatever we were born with.)
Now looking at the source, that package may make sense if figuring out whether something is a number type in JS is really that cumbersome. (Though I'd expect that there is a more generic package that covers the other built-in types as well.)
Also since isNumber treats strings that can be converted to a number, a number, it can yield weird results since adding two strings will naturally just concatenate them. So e.g.:
const a = '1';
isNumber(a); // returns true
const b = a + a; // Now you have a string in b: '11'
Of course, it's standard JS stupidity (and 2*a would be 2, and 1+'1' and '1'+1 would both be '11'), but then maybe stating that '1' is a number is not the right response. However, the package was downloaded 46 million times last week and that seems to be so low only because of Christmas. The previous weeks averaged around 70M. And most of these are dependencies, like in our projects, I'm sure.[1] https://www.zdnet.com/article/nasa-has-chosen-these-cpus-to-... [2] https://www.nasa.gov/news-release/nasa-awards-next-generatio...
So the thing is that nobody knows what the development curve of AI is going to be and what the exact economical and societal effects are going to be. Whether it's 5 years to AGI or 50. (Neither of these seem very likely BTW.) Now since we do expect that there can be problems and since we at least can't rule out that these will manifest in the foreseeable (near) future, it's better to assume that we will have (at least economical) problems soon. It doesn't matter what LLMs can do today.
The development curve is what matters. And even if I said we don't know it, we have pretty good reasons to think (see above) that it's going to be powerful enough soonish. Just remember: about 1.5-2 years ago basically nobody would have predicted that LLMs would be able to do what they can do today. And I mean most experts would have probably said that it's not possible for LLMs to do what they can do today at all . Definitely not that they would be doing it by mid 2023. Or even just that they would be so powerful that a lot of non-technical people would use them. (Though, sure, there is still very little practical use as of today but the capabilities did make a huge and unexpected jump. It even surprised researchers like Geoffrey Hinton.)
> Sure I can, uBlock Origin provides exactly that.
Obviously, I meant that it doesn't work financially so there is no point being upset about it. If enough people block the ads then they'll do something about it. Actually it's not hypothetical anymore, I just started to see these warnings a few days ago. (I wasn't deliberately blocking the ads, I've been just using ghostery which, it seems, started blocking YT ads.) So yeah, in the end, as you also say, people in general can't consume ad supported services without paying with their attention. It just doesn't work business wise.
So firefox can't do much about it without actively trying to circumvent YT and YT specifically.
I don't think browsers made the turn you mention. It's more like browsers became more and more capable and web developers made use of it. Sometimes it's annoying because most websites are not websites anymore but apps (GUIs) that run in the browser and some of the web sites/apps people use could never work without it. Sure, we could all deploy those apps onto our machines (or have them deploy automatically in a sandbox) and there were actually technologies that did just that (think java web start or whatever the name ended up being) but they lost to what we have now: running these apps in the browser.
Also, you can't have an ad-free experience if the price of using a service is that the ad is delivered to you. On YT you can buy a subscription and you'll see no ads. But sure, most sites don't offer this.
Yes, you could say that repetition is part of the transfer, but that wouldn't be too useful, it would just conflate teaching/training with programming.
Sure, you can program a human to do menial tasks and they can do it with acceptable accuracy but even that may require a lot of trial and error. ("Oh, but you said I should do this and that and never mentioned that in this special case I should do that other thing." Or, probably more relevant: "yes, you told me to do this and that but this situation looked different, so I solved it in another way I thought was better.")
Now, if the system has some form of common sense (what we, humans call common sense), then it will be able to follow your instructions without doing unexpected things most of the time but it will still fail, just as natural intelligences do.
Instead of programming the "thing", what you can do is make the thing generate a program that you can test and review and run that. But that's definitely more work than giving a set of instructions to the LLM. But, for common tasks, it may acquire enough common sense so that the surprises will be rare enough.
He also mentioned writing emails with ChatGPT (though I can't remember if these were for communicating with the devs, but it doesn't really matter). I remember thinking that well, you my friend are pretty ignorant and not someone I'd like to work with. Even unethical.
So someone puts in the work to inform you about important details of their work/thought process and then this guy just ignores the whole thing. Even if the developer in question is really sharing more details than needed the right thing to do is to actually manage them and teach them to share less and make their own decision. (Hard to tell from the outside, of course, and the manager in question might be wrong too.)
Now if someone also blows up their own emails with generated details, especially if it's toward the same person whose email they have compressed with the AI then besides robbing the time of others, they may successfully deceive others and themselves and pretend that they have the knowledge what they don't have. And that will hurt the decisions made by them and by others. Basically the shared reality that you want to create with communication will not be a shared reality but out-of-sync views and you'll end up with a lot more "oh, but when I said that I thought you meant X...."
He made a comment that 40-50 year old people looked like old men in our childhood and now people of this age really look pretty young, like 10-20 years younger than back then.
And the girl replied that "well, maybe it just shows we're getting old and children and youngsters these days probably see you just as old as you saw those people back then..." :)
But yeah, I had that feeling too. I remember being amazed/perplexed when looking at the photos of people from WW2 or the people on the photos of the 1956 revolution of Hungary (being a Hungarian). When you read about it and see the photos of people executed in their 30's or 40's and they look like grandparents these days. (I'm mentioning the ones executed because those are the ones usually where you know their birth date.) And no, the photos aren't necessarily ones taken at the trials or during the atrocities.
That's kind of what the whole natural sciences community is doing. Like that is one way to define what natural sciences are about. That's basically the biggest goal anyone could mention. Like your cliche "world peace" answer that no beauty contestant ever says any more.
On a side note, I think the idea behind the first part of the phenomenon, i.e. that we think you need intelligence (and probably general intelligence) to do most things that machines cannot is that that is the way we do it. So until we could build machines that could calculate (say multiply and divide) we though you needed actual intelligence because we didn't know any other way and that is how we did it. (I remember that calculating and calculators were an actual example in that lesson.) Same thing for chess. And yes, we were right to say that you don't need general intelligence for neither chess nor calculating because we could come up with relatively simple algorithms.
But people a few years ago started to say this about go. And I do remember that after DeepBlue beating Kasparov everybody was like "yeah, but you need intelligence for go because that's a game with vastly more possible moves". And in a sense this is what we saw, because AlphaGo was indeed a kidn of AI, but still people started saying that you don't need intelligence to win go - as long as you are a machine.
Now people started to make up shit about how GPT is just generating text and that's not intelligent (some people, obviously ignorant laypeople, even say that it's just copy pasting text together and other nonsense). Despite that the freaking thing passes high level exams aimed at people. (Of course, you can say that it's still not a sign of intelligence, because the exams do not measure that, we know people are more or less intelligent, the exam measures knowledge, but the amazing thing here is not the knowledge part but being able to answer the questions aimed at people.)
On a side note, Geoffrey Hinton just told in an interview that he used to think that it's 20-50 years away (as I said I've never heard a specific number from anyone before this) and now he thinks it's less than 20.
Now add to this that people working in the field tended to systematically underestimate the progress. My gut feeling is that if Hinton says less than 20 years then it can easily turn out to be 10 or less. (Also, I very much respect him for coming up with an actual number.) I think AI researchers underestimate the progress partly because they don't want to look stupid by making over-optimistic predictions. However, in this case, I'd argue that the optimistic prediction is saying that it takes longer. Because it will definitely stir up the whole society and economy at the very minimum.
If these start to matter, even picking a service from a list of possible providers takes time. Learning their tools, their APIs takes time, etc. OTOH if you have a project template, a setup you know, doing an MVP with that can be really cheap/quick. If not, I can see how this makes sense. But I'm not sure you can have a sustainable business just by serving people building MVPs.