I usually find that if I come out of a job interview thinking "aced that one", I don't get it. If I come out thinking "oh well, never mind", I get an offer. I like to think that its attitude that matters, and the ones that reject me see a sort of cocky attitude as things are going well. But maybe its just me and the weird way my life plays out.
I've had other interviewers ask me really abstract problems, such as how to calculate the number and types of elevators a particular-sized building needed. Honestly, I had no fucking clue. I'm a videogame programmer, not an architect. I reasoned it out as best I could, and obviously I didn't guess well enough.
These questions are not about a right answer, they are entirely about how you reason them out. Most companies that use them just want to see you thinking, and communicating your thought processes (ie. to see if you can think!).
Not quite, if Uber doesn't want to be a taxi company it shouldn't be placing so many (or any) restrictions and rules on the "independent" drivers who work for it.
That's where the problem lies, if Uber wants to be a digital distributor of taxi companies, that's all it should be doing.
interesting.. and I know its hard to prove on a still but I'll believe you if you tell me the video recorder also captures sound, and at a decent quality?
amen. The number of time I've been searching for answers to technical problems, find a site that seems to have the answer from the Google summary, only to click it and be told "denied, reason: personal blog", where i get home and find that someone has hd the same problem I had, blogged about it to help others solve it.
So,... I waste loads of company time re-solving that problem because the IT guys think they know best. Sorry - when IT stops being a service to enable the users and starts being their own fiefdom, its failed.
Which UK home that contains a person stimulated by maths, technology or computers science does not also already have a PC or and Android device?
and how many of those homes use the device for anything other that games, email, web browsing?
The point of this thing is not to be a computer, but to be the bare bones of an educational device. It has no tv-out for example. It'll be used to teach the "how computers work" course in the curriculum and that's it. There'll be no taking it home to use as a media centre, no playing games on it, nothing but its intended use - its basically an interactive textbook, an educational device.
True, I'd rather they spent time on responsiveness - but process per tab won't necessarily fix that (all they're doing is shoving code that used to execute in a thread into a process, ie an isolated thread, in terms of what they do and communicate with the main browser, nothing really changes)
Still, one reason why I will still close the entire browser and not one tab is that if a tab breaks, closing it closes the tab. If I close the browser, when I open it again, there's my tab (hopefully not broken again) and I can resume where I left off.
I'm sure the biggest problem is decided where to spend their engineering efforts, and ppt and 64-bit means other areas (eg memory, perf and responsiveness) will not get the attention.
but Chrome is almost moving away from per-process tabs as they use more memory and don't really give you any improvement over the browser - if a tab dies, you'll still close the browser and reopen it, just in case the flaw had affected something else and besides, some tabs are grouped in processes anyway. (I don't know if this is still true, years later but it shows how the hype is often nowhere near what's desired)
So why bother implementing something useless, just to make some people feel better. Its like 64-bit support. Why bother with that, it'll make no difference to daily use.
Now, fixing memory usage, reducing cache usage by idle tabs, freeing up memory used by closed tabs so the overall memory doesn't grow... things like that are what's important. Not visible to most people, not "cool" by any means. Just boring, but solid, engineering discipline.
for every 100 "idea" persons there is 1 who not only has the ideas but knows enough that those ideas are sane and sensible. This is why the "idea person" is a fool and treated as such.
You see these guys on shows like The Apprentice, the ones who have no talent or skills and so have to fall back on their mouths. They're simply salesmen who always get shown up to be useless in the end. Even a true businessman has plenty of skills they have to learn around organisation and management (real skills, not just shouting at people and pretending they know what they're doing).
So: Idea people, get a clue.There's no easy way to skip the essential steps of truly knowing what you're doing unless you learn those skills.
I found Wt really interesting, replacing desktop UI controls with their equivalent in HTML ones, passing the data back to the same c++ backend that the desktop would use. I'm sure it'd be a cool thing to replace your QApplication woth WApplication and have it turn into a html5 GUI, but what's the chance the GUI components supported would just be the most basic?
true, Windows stole a lot of features from Linux (without doing them as well), but I don't think the desktops feature in Win10 will be as slick as you want, partly nothing ever is unless it has the exact feature set and keys, and partly because multiple desktops has not been a prime feature for Windows user since.. ever, as you know by the lack of a desktops program!
I'd just stick with Windows 7 until there is a need to move.
Re:The problem is that landfills are too cheap
on
Recycling Is Dying
·
· Score: 1
plastic is easy to recycle generally melt it down but... it depends opn the types. You cannot recycle "plastic" if you have a heap of plastic that is a mix of HDPE and Polystyrene, not unless you sort it into 2 distinct heaps first.
And that's the problem. Sorting is hard as one white bottle can look much the same as another white bottle made with a different type. Maybe they could legislate that all plastic goods are easily marked in some way (like coloured insert or large area of special texture that varies by type), but otherwise you're going to have to sort it expensively.
Re:The problem is that landfills are too cheap
on
Recycling Is Dying
·
· Score: 4, Informative
Its not quite that simple.
Glass - really easy to recycle, we have even been doing this for decades in the UK. Only thing is, you have to sort it by colour first or it cannot be recycled, except as glass that is used in non-consumer areas.
Metal: easy to recycle, ferrous material is even easier as a big magnet can sort it. The rest is basically aluminium from drinks cans.
Paper: can be easy, but not if its contaminated with plastic (eg windowed envelopes) or plastic (coated to make it shiny). Even then, there's a limited recycling cycle for it, but it can still be burned in the end.
Plastic: now we get a problem. There are so many different types, (you can see them on your products by looking for the number inside the recycle triangle). Then there's problems with the colours - put black plastic in with the rest and it can only be turned into more black plastic. The prices for most plastic is so low that its often cheaper to just chuck it in the garbage.
Ultimately sorting at source is the only option to make recycling cost effective (and even then, if one neighbour decides to stuff his rubbish in the recycling bin, none of the lorry load that collected it gets used).
Round here, we do plastic in bags; metal, paper and glass in bins. I used to live in a place where you could put the latter 3 in a single bin as sorting that was relatively easy, but they didn't take plastic at all.
There are ways to encourage recycling like we used to do: community groups could collect things like paper, you'd store them until a church or scout group would turn up to collect bundles of one type of material (say, papers) where they would take them to be recycled and possibly even get paid for them as the bundles would be properly sorted and thus worth a lot more, or you could just put a penny deposit on glass or metal that could be refunded on return.
BTW, Ars had an interesting tour of a recycling centre:
to be fair, the same applies to all languages - I recall the C# yield stuff someone wrote once (probably because it was cool, and even he couldn't understand what he had done sometime later).
And then I think of my colleague who writes the simplest of C# code, but writes it in layers behind layers that its a maze.
Language features do not necessarily make for confusion, like most things, its the way you do it that matters.
"They asked up to $1,500 (£1,000) a kilo. Asked why they were so expensive, one woman replied with no apparent shame: "Because they're rare and illegal."
My only hope here is that when the pagolins are all dead, the ants they used to eat in great quantities rise up and eat the vietnamese and chinese who put profit above ecology.
I don't see the problem - the people they're up against will simply take the technology and start making their own rhino horn. After all, they understand profit more than most, so being able to make their own "honest guv, its real rhino, would I lie to you" 'medicine' without all the expense of paying some middleman poacher, you know they're going to go full-on in the fake rhino horn trade.
actually WinRT is not any language specific. You don't even need the C++/CLR bindings for it.
What happened is Microsoft took the.NET runtime (which was mostly a wrapper around win32 anyway) and turned it into a different wrapper that is now much more native code directly exposed to.NET apps, but that native code is also directly exposed to all other languages.
They have the WinRT wrapper for it which looks very much like the old.NET runtime,but it more like COM than a managed API. You can also access it via a c++ style API (that's known as WinRL) that was inspired by Microsoft's ATL APIs.
So technically.NET no longer exists, its all native runtimes bundled into the Windows core.
True in a way - you may not get the awesomeness of Django when writing webapps, and ASP.NET is pretty awful (they know - that's why keep changing it, which means your skills are always obsolete, ho hum). but you do get VS, which is pretty damn good.
I don't do much C#, preferring C++ for heavy lifting and 'something else' for specialised bits (eg UI or webapp front end) and it works very well in these cases, but I wouldn't like to code WCF or WPF or ASP.NET daily basis at all.
Team Foundation Server is pretty bad as well, they did stick git support onto it, but that's really just a git front-end on a centralised repo (which is not a bad idea, just doesn't work so well if you're used to git workflows). The back-end build system that's part of it is configured using 10,000 lines of XAML code, which is just truly awful.
There's no reason at all not to use C++, but you do that for the real work your app does, and then you link your C++ library to a small front-end that is written in whatever the native toolkit is for your platform.
So you can have your C++ logic accessed by iOS, or Android, or Windows phone or desktop. You can even hook it up to a webserver (or embed one) and have it running as a webapp.
It does cost a little more, creating these different UIs, but the benefit is often worth it. Qt is great, ut native UI is better at being a UI on its intended platform.
this , so much. C# may be Microsoft Java++ but at least they get updates on a weekly basis, Oracle... well, even if you do get notified of an update there's no guarantee it'll apply correctly anyway (possibly due to Windows security software preventing it, or firewalls blocking the download) and even if you do download and apply it, there's a small chance someone will forget to uncheck the ask.com toolbar and you're even worse off than you were before the update!
The biggest issue is that if someone has gained access to your internet-connected server, they have massive amounts of bandwidth to launch all those nasty things they do. You want fewer DDoS extortion attacks, fewer malware botnets? Kill off Java. (note that, last time I looked a load of the security updates for the JRE was to do with webservice code, ie server-side connectivity. All those people saying "oh its only the browser plugin" are sticking their heads in the sand)
the other practicality is that if its set too warm, there will be more post-lunch snoozing than there would be if you keep the place frosty.
Forget comfort, its all about productivity!
I usually find that if I come out of a job interview thinking "aced that one", I don't get it. If I come out thinking "oh well, never mind", I get an offer. I like to think that its attitude that matters, and the ones that reject me see a sort of cocky attitude as things are going well. But maybe its just me and the weird way my life plays out.
I've had other interviewers ask me really abstract problems, such as how to calculate the number and types of elevators a particular-sized building needed. Honestly, I had no fucking clue. I'm a videogame programmer, not an architect. I reasoned it out as best I could, and obviously I didn't guess well enough.
These questions are not about a right answer, they are entirely about how you reason them out. Most companies that use them just want to see you thinking, and communicating your thought processes (ie. to see if you can think!).
Not quite, if Uber doesn't want to be a taxi company it shouldn't be placing so many (or any) restrictions and rules on the "independent" drivers who work for it.
That's where the problem lies, if Uber wants to be a digital distributor of taxi companies, that's all it should be doing.
interesting.. and I know its hard to prove on a still but I'll believe you if you tell me the video recorder also captures sound, and at a decent quality?
or to put it another way
Scientist:" Lol Gravity is full of inaccuracies, I mean nothing could actually hit the ISS"
News 3 days later: "IIS takes emergency action as killer lump of satellite comes perilously close to hitting it".
Scientists, easy to tell us all how wrong we are without stopping to consider possibilities.
amen. The number of time I've been searching for answers to technical problems, find a site that seems to have the answer from the Google summary, only to click it and be told "denied, reason: personal blog", where i get home and find that someone has hd the same problem I had, blogged about it to help others solve it.
So,... I waste loads of company time re-solving that problem because the IT guys think they know best. Sorry - when IT stops being a service to enable the users and starts being their own fiefdom, its failed.
Apparently its 18 times faster than the original BBC B, so yes it should....
but as there's no monitor output, controlling your ship is going to be tricky.
Which UK home that contains a person stimulated by maths, technology or computers science does not also already have a PC or and Android device?
and how many of those homes use the device for anything other that games, email, web browsing?
The point of this thing is not to be a computer, but to be the bare bones of an educational device. It has no tv-out for example. It'll be used to teach the "how computers work" course in the curriculum and that's it. There'll be no taking it home to use as a media centre, no playing games on it, nothing but its intended use - its basically an interactive textbook, an educational device.
True, I'd rather they spent time on responsiveness - but process per tab won't necessarily fix that (all they're doing is shoving code that used to execute in a thread into a process, ie an isolated thread, in terms of what they do and communicate with the main browser, nothing really changes)
Still, one reason why I will still close the entire browser and not one tab is that if a tab breaks, closing it closes the tab. If I close the browser, when I open it again, there's my tab (hopefully not broken again) and I can resume where I left off.
I'm sure the biggest problem is decided where to spend their engineering efforts, and ppt and 64-bit means other areas (eg memory, perf and responsiveness) will not get the attention.
but Chrome is almost moving away from per-process tabs as they use more memory and don't really give you any improvement over the browser - if a tab dies, you'll still close the browser and reopen it, just in case the flaw had affected something else and besides, some tabs are grouped in processes anyway. (I don't know if this is still true, years later but it shows how the hype is often nowhere near what's desired)
So why bother implementing something useless, just to make some people feel better. Its like 64-bit support. Why bother with that, it'll make no difference to daily use.
Now, fixing memory usage, reducing cache usage by idle tabs, freeing up memory used by closed tabs so the overall memory doesn't grow... things like that are what's important. Not visible to most people, not "cool" by any means. Just boring, but solid, engineering discipline.
But that's really what we want.
for every 100 "idea" persons there is 1 who not only has the ideas but knows enough that those ideas are sane and sensible. This is why the "idea person" is a fool and treated as such.
You see these guys on shows like The Apprentice, the ones who have no talent or skills and so have to fall back on their mouths. They're simply salesmen who always get shown up to be useless in the end. Even a true businessman has plenty of skills they have to learn around organisation and management (real skills, not just shouting at people and pretending they know what they're doing).
So: Idea people, get a clue.There's no easy way to skip the essential steps of truly knowing what you're doing unless you learn those skills.
your problem is possibly down to sitting around too much, one day you'll be stuck in that chair 24/7. Not good.
the answer is to get up and start using those muscles that have forgotten what they're there for,
sure, but I thought gtk had a dependency on systemd nowadays so you have to count it's, and all its dependants' binary sizes too :-)
I found Wt really interesting, replacing desktop UI controls with their equivalent in HTML ones, passing the data back to the same c++ backend that the desktop would use. I'm sure it'd be a cool thing to replace your QApplication woth WApplication and have it turn into a html5 GUI, but what's the chance the GUI components supported would just be the most basic?
true, Windows stole a lot of features from Linux (without doing them as well), but I don't think the desktops feature in Win10 will be as slick as you want, partly nothing ever is unless it has the exact feature set and keys, and partly because multiple desktops has not been a prime feature for Windows user since.. ever, as you know by the lack of a desktops program!
I'd just stick with Windows 7 until there is a need to move.
You mean like this Windows powertoy from Technet?
plastic is easy to recycle generally melt it down but... it depends opn the types. You cannot recycle "plastic" if you have a heap of plastic that is a mix of HDPE and Polystyrene, not unless you sort it into 2 distinct heaps first.
And that's the problem. Sorting is hard as one white bottle can look much the same as another white bottle made with a different type. Maybe they could legislate that all plastic goods are easily marked in some way (like coloured insert or large area of special texture that varies by type), but otherwise you're going to have to sort it expensively.
Its not quite that simple.
Glass - really easy to recycle, we have even been doing this for decades in the UK. Only thing is, you have to sort it by colour first or it cannot be recycled, except as glass that is used in non-consumer areas.
Metal: easy to recycle, ferrous material is even easier as a big magnet can sort it. The rest is basically aluminium from drinks cans.
Paper: can be easy, but not if its contaminated with plastic (eg windowed envelopes) or plastic (coated to make it shiny). Even then, there's a limited recycling cycle for it, but it can still be burned in the end.
Plastic: now we get a problem. There are so many different types, (you can see them on your products by looking for the number inside the recycle triangle). Then there's problems with the colours - put black plastic in with the rest and it can only be turned into more black plastic. The prices for most plastic is so low that its often cheaper to just chuck it in the garbage.
Ultimately sorting at source is the only option to make recycling cost effective (and even then, if one neighbour decides to stuff his rubbish in the recycling bin, none of the lorry load that collected it gets used).
Round here, we do plastic in bags; metal, paper and glass in bins. I used to live in a place where you could put the latter 3 in a single bin as sorting that was relatively easy, but they didn't take plastic at all.
There are ways to encourage recycling like we used to do: community groups could collect things like paper, you'd store them until a church or scout group would turn up to collect bundles of one type of material (say, papers) where they would take them to be recycled and possibly even get paid for them as the bundles would be properly sorted and thus worth a lot more, or you could just put a penny deposit on glass or metal that could be refunded on return.
BTW, Ars had an interesting tour of a recycling centre:
http://arstechnica.com/science...
to be fair, the same applies to all languages - I recall the C# yield stuff someone wrote once (probably because it was cool, and even he couldn't understand what he had done sometime later).
And then I think of my colleague who writes the simplest of C# code, but writes it in layers behind layers that its a maze.
Language features do not necessarily make for confusion, like most things, its the way you do it that matters.
and the pangolin, what's not used for trinkets or medicine is simply scoffed.
http://www.bbc.co.uk/news/maga...
"They asked up to $1,500 (£1,000) a kilo. Asked why they were so expensive, one woman replied with no apparent shame: "Because they're rare and illegal."
My only hope here is that when the pagolins are all dead, the ants they used to eat in great quantities rise up and eat the vietnamese and chinese who put profit above ecology.
I don't see the problem - the people they're up against will simply take the technology and start making their own rhino horn. After all, they understand profit more than most, so being able to make their own "honest guv, its real rhino, would I lie to you" 'medicine' without all the expense of paying some middleman poacher, you know they're going to go full-on in the fake rhino horn trade.
actually WinRT is not any language specific. You don't even need the C++/CLR bindings for it.
What happened is Microsoft took the .NET runtime (which was mostly a wrapper around win32 anyway) and turned it into a different wrapper that is now much more native code directly exposed to .NET apps, but that native code is also directly exposed to all other languages.
They have the WinRT wrapper for it which looks very much like the old .NET runtime,but it more like COM than a managed API. You can also access it via a c++ style API (that's known as WinRL) that was inspired by Microsoft's ATL APIs.
So technically .NET no longer exists, its all native runtimes bundled into the Windows core.
True in a way - you may not get the awesomeness of Django when writing webapps, and ASP.NET is pretty awful (they know - that's why keep changing it, which means your skills are always obsolete, ho hum). but you do get VS, which is pretty damn good.
I don't do much C#, preferring C++ for heavy lifting and 'something else' for specialised bits (eg UI or webapp front end) and it works very well in these cases, but I wouldn't like to code WCF or WPF or ASP.NET daily basis at all.
Team Foundation Server is pretty bad as well, they did stick git support onto it, but that's really just a git front-end on a centralised repo (which is not a bad idea, just doesn't work so well if you're used to git workflows). The back-end build system that's part of it is configured using 10,000 lines of XAML code, which is just truly awful.
Its still better than Java though!
There's no reason at all not to use C++, but you do that for the real work your app does, and then you link your C++ library to a small front-end that is written in whatever the native toolkit is for your platform.
So you can have your C++ logic accessed by iOS, or Android, or Windows phone or desktop. You can even hook it up to a webserver (or embed one) and have it running as a webapp.
It does cost a little more, creating these different UIs, but the benefit is often worth it. Qt is great, ut native UI is better at being a UI on its intended platform.
this , so much. C# may be Microsoft Java++ but at least they get updates on a weekly basis, Oracle... well, even if you do get notified of an update there's no guarantee it'll apply correctly anyway (possibly due to Windows security software preventing it, or firewalls blocking the download) and even if you do download and apply it, there's a small chance someone will forget to uncheck the ask.com toolbar and you're even worse off than you were before the update!
The biggest issue is that if someone has gained access to your internet-connected server, they have massive amounts of bandwidth to launch all those nasty things they do. You want fewer DDoS extortion attacks, fewer malware botnets? Kill off Java. (note that, last time I looked a load of the security updates for the JRE was to do with webservice code, ie server-side connectivity. All those people saying "oh its only the browser plugin" are sticking their heads in the sand)
Java sucks, it just needs to die.