HN user

webjprgm

403 karma
Posts0
Comments304
View on HN
No posts found.

The potential is to replace computers. In its current version, it is basically an iPad on your face. Look a little forward and it is a laptop on your face. Imagine that the price came down to $1500-2000 in a couple years, now you can buy an Apple Vision instead of a laptop. And you wouldn't need to buy a TV either. So this does have device consolidation potential like the iPhone did and it can tap into an existing market like the iPhone tapped into the phone markets.

I think previous AR/VR devices didn't quite have the right sweetspot of hardware features (too low resolution, tied to one spot, extra controllers), but this one looks like it might just do it. What it doesn't have is a low enough cost, so it will be a slow start. I'm also still curious if there will be a "killer app" that encourages people to get into it, but the long-term vision of spatial computing is itself enough of a killer feature. I just wonder how long that will take.

My guess is that Apple was a vehicle to further his compiler and programming language plans. Now that he has done that, it becomes more mundane maintenance and incremental changes. So it is time to move on to a new challenge.

Swift has its problems but keeps getting better. I only get to use it for my at-home projects, since at work the portion of the codebase that is for iOS is Objective-C with no plans to switch any time soon. Old Obj-C too, and started by people used to programming in VB on MS platforms. So count your blessings.

I'm not sure I would say Swift is the kind of robust that is needed for safety critical software, but it is a nice step forward for application code. It mostly forces you to deal with things safely while still allowing Objective-C dynamic behaviors when you need to get around the restrictions (often to interact with other Obj-C code).

So, yes I can see why one would call Lattner at the forefront of making more reliable compilers and pushing shifts in quality standards in fast-moving Silicon Valley. It is an awesome achievement to create a new language that improves both readability and safety and even more awesome to get it mainstreamed so quickly.

There are a few people who I would like to trade places with. Lattner is one of them, Musk is another. They both fulfill different parts of my long-held dreams. So I consider them to both be quite awesome. Its cool that they'll be working together too I guess.

Also sounds similar to M (aka MUMPS), see InterSystem's Cache (commercial) or GT.M (open source). It is an old programming language with a persistent key-value store that is basically a NoSQL database with programming logic combined. From what I've heard finance and health care software often uses this. It similarly puts the business logic in the database.

It would be interesting if candidates were not allowed to promise what they would do, but merely campaign on their morals and good standing in the community so we can pick people who would make intelligent decisions but not necessarily ones that would choose a specific way on a specific issue. That's what you're asking for here.

Democracy is a form of government that can destroy itself. The French voted to put in an emperor their first time around. So we may have a good constitution but if the people vote to make bad laws that break it, and permit those laws to function, then it is the people's fault, not the founder's fault.

The article has one sentence about the videos being on a beach house computer that someone else could have used. So just from this article it is unclear exactly how damming that evidence is, but it is possible it was not his fault that the illegal videos were on his computers. So first suspicion and second being charged for something he didn't do but could not get out of because he didn't have access to all the legal information necessary.

At least that is a possibility. If he really is guilty then I don't feel bad for him.

It's kinda like adjusting the seat position in a car. If you could have each individual user's preferences saved somewhere and applied to every car/computer when you sit down to use it, then personalization wins.

Similarly some punctuation is moved on a Spanish keyboard, but often in Venezuela and Chile I ended up using an American keyboard with Spanish layout so I had to just know which keys were which because the letters printed on them were wrong. Fortunately at that time I was not doing a lot of programming because it was annoying.

The stay at home parent is childcare. You get personalized child care or you can outsource it for economies of scale and have the second parent work so long as that parent earns more than the cost of childcare.

But I think there's more than just taking care of children. There is research into how important family units are, and those units are better strengthened by greater time commitments of the parents than by less.

Plus there's the issue of parental choice in teaching values. If everyone in the society agreed upon values than the preschool teacher's example would be equivalent. But parents often have their own way of seeing things. Different religions. Different economic and civic philosophies, etc. So there's another reason to increase parental involvement, so that the parents spend more time being role models and conveying values. This is especially true if the childcare is provided as a universal service from the government, because then you can't even choose childcare at your local church.

I agree with other posters that same-field is usually going to be blocked anyway. I've had non-competes at 2 of my 3 jobs which would prevent me from working at any competitor in the industry for X years after quitting anway.

But my current work contract has an anti-moonlighting clause that could also be a problem. It states that I can't have other demands on my time that would interfere with my day job. Now, I interpret that as meaning I can do side projects that have no deadline and just be luxuriously slow and lazy at making progress on them. But for an audition project I probably wouldn't be able to take it that slow.

So a more realistic test would let the candidate use Wikipedia to refresh his/her memory, but then you would need more complex questions that require demonstrating understanding, like being given a chunk of real code and applying the theoretical concept to improve it.

Misrepresenting abilities ... yes, I did that in my first job interview. The job posting said PHP, HTML, MySQL skills. Well, I knew HTML well enough but my PHP and MySQL skills were from a few side projects doing copy-paste-modify with PHP BB's code base to make my own web app, which I never did finish. So I only kinda/sorta knew those languages.

But then at the end of the interview I was given a coding challenge to do at home over the next few days. PHP and MySQL have good online documentation so I was able to knock it out quickly and I got the job. So, yes I misrepresented my skills, but I also knew I could live up to what I was claiming I could do.

The one time I tried a fizzbuzz in a series of interviews, one candidate was surprised and almost insulted. At the end of the day, I learned almost nothing about any of the candidates from this question. Only one candidate (in fact, the one female candidate) implemented it substantially different than any other. All the candidates could do it. They were all CS students at a university, so what was the chance they were not going to be able to compile a program anyway? So I think you have to take fizzbuzz with a grain of salt and know when to try a more complex programming exercise.

(That being said, I'm horrible at doing interviews so take my advice with an even bigger grain of salt.)

Vulkan is Here 10 years ago

Apple isn't usually about "locking people in" but more about controlling the experience. That can lead to the same thing, where they want everyone to use their API and not someone else's, but the difference is whether they have greedy, malicious intent or not. I don't think they do. Having good intentions means they are more likely to surprise you and do something good eventually.

Still, I wouldn't hold my breath on Apple supporting Vulkan soon. Their OpenGL support is usually a few versions behind so if they do ever support Vulkan I would expect it to be late.

Vulkan is Here 10 years ago

My first thought on seeing Vulkan is that it is basically Metal for everyone else. Is that not so? Then why would you expect Apple to support Vulkan given that they already have Metal?

I don't know if people share this opinion, but to me speeding is due to the inadequacy and inconsistency of speed limits.

Near my home there is a major thoroughfare with a 35 MPH speed limit. It has no homes facing the road, just a few fenced backyards some fair distance away but mostly it has farms, ponds, and golf courses. People regularly go 40-50 MPH down this road.

Another major road that crosses this one has a speed limit of 55 MPH. It has several houses directly on it. I've stopped once to let an old man cross the street to get to his mail box. It has a school (where the speed limit drops to 45 MPH). It is too narrow and dark in my opinion to have a 55 MPH speed limit.

I believe both roads should be 45 MPH.

Furthermore, the freeways through town are 55 MPH speed limit. Ridiculous. Most states have 65 MPH limits even within a city. (I didn't grow up here, obviously.) So naturally there is a lot of speeding.

There are probably several rules and reasons for these limits. The 35 MPH road is within city limits while the 55 MPH road is technically in a different township and would once have been considered a farm/country road though it is now a major road to an office building complex and school. We also have to deal with snow and other weather conditions part of the year, and we don't have electronic speed limit signs to change the speed limit or something based on changing conditions.

Then there's also the fact that city planners never manage to build sufficient roads until the current ones are overcrowded. So this 35 MPH road probably was not originally intended to be such a major road, but there isn't any other good way to go N-S through that part of town because the rest is all winding back and forth through neighborhoods.

I would definitely be in favor of having speed limits that were consistent and actually made sense, then enforcing them very carefully.

(Note that the article doesn't say how much over 25 counted as speeding. Did he count 26 as speeding? My own metric is that if it is less than 5 over then it is not speeding.)

When I worked at Apple we used a native Mac issue tracker. It was much nicer than anything I've used before or since. I hate having to click-refresh-back-forward in a browser window, whereas a native client can have multiple windows, one for my assigned list, one for a search I did, then I minimize that search window and make a new window for a new search, then I cmd-H to hide the whole app without also hiding my browser.

At my current company we have an in-house project/issue tracker system which isn't quite as good as Apple's IMHO but very customized to this company's workflow. For my at-home consulting projects I try various web apps, most recently Mantis.

Building AI 10 years ago

So we want unsupervised learning, huh. I think this line is rather important:

But there are lots of limitations of this approach. For one, to teach a person something new, you typically don't need to tell them about it thousands of times. So the state of the art in AI is still much slower than how we learn.

Unsupervised learning is not necessarily the answer. The computer would have to be given plenty of spare time to learn random patterns from the universe and have enough inteligence to apply these to a problem. What would be better is if we could tell the AI once and have it figure things out. When you start a new job that's what happens, someone tells you the instructions. (They may or may not show you as well, and may or may not stick around to correct your mistakes.) This requires interpreting the instructions into rules and then attempting to apply them, learning from mistakes, and then evolving that into rules that work, then after enough examples of success, evolving into patterns recognition that makes it more automatic.

Human expertise can be broken into three levels, the first is strategic planning and takes a lot of mental effort, then there are rules-based responses which are faster, then there is the muscle-memory-like automatic responses. Right now it seems we either manually program in all the rules or else we use 1000s of examples to build up the automatic level, but we don't have the strategic level for the AI to build its own rules or the level of using its rules to learn from examples over time. (Though I am not well enough versed in AI to know for sure that we don't have pieces of those solutions.)

It would also be nice for the AI to be able to take patterns it has learned and articulate them as rules which someone else could learn.

I'm not sure about CHIP, but a RasberryPi can hook into our TV and I have several old USB keyboards and mice to plug into it. If you don't, you can get one for really cheap. It's the monitor that is most of the extra cost. (I also have a spare monitor, but I'm a computer guy so of course I have extra parts.) Anyway, if the idea is just to allow a kid to have their own computer to break/tinker with, then sharing the family TV to run it is OK. It doesn't solve the time-share issue. (I remember my little sister monopolizing the TV to watch Dumbo The Flying Elephant over and over again.)

There are too many JS frameworks/platforms/libraries to keep up with. I can't spend my time investigating them all. I've heard of Meteor several times but in my mind it was associated with (a) real-time apps, and (b) not free. I'm guessing that was because it is the free alternative to a paid thing? Anyway, that's what stuck in my head so I've ignored this one.

Is looking at GitHub stars a recommended way to find the best frameworks? Or what would you suggest for that?

I recently started looking at Nodal since it was mentioned here on HN a couple weeks ago. It looks pretty cool at first glance but I haven't tried building anything with it yet. (I don't have infinite time.)

I remember when there was Prototype.js vs jQuery vs Yahoo's library vs MooTools vs fill-in-the-blank. I only switched to jQuery when virtually everyone else had. Until then I stuck with Prototype because its the one I already knew (because I tried it first), even though I had played with jQuery a little bit.

So, again I say there are just too many frameworks to keep up with. (And ask if anyone has a good site / method for dealing with this.)

A few thoughts:

(1) If they block tracking, does it block Google Analytics? Because that would annoy me as a website owner.

(2) The reason I don't pay subscriptions to sites like Wall Street Journal and NY Times is that I get my content from aggregators like Hacker News so I only go to one of those paid sites if I follow an occasional link. Micropayments would fix that if I could pay one company a $5/mo subscription to then have payments automatically dolled out to a select list of good sites until my $5 was used up (then maybe ask me each time after that, or something).

(3) They talk about avoiding the ad-blocking war, but they are just contributing to it. I guess what they think is that by making a way for the website owner to get paid they avoid some of the war, but many companies like to be in direct control of their money so they might not like a middleman sitting on the high way charging everyone a tax to pass. And if Brave doesn't charge something for its services then it has no business model, so I'm assuming they are not passing 100% of revenue on to the site owner.

They provide tools to port. So I think it depends more on how large your app is. For a small app running the tool and making a few misc fixes will probably be fairly easy. At least if it is like the 1.0 -> 2.0 change.

For larger apps, well, I have a Swift app that isn't really very big, probably still small but significantly bigger than a tutorial, and it keeps freezing Xcode. (Edit something in Interface Builder, switch to the ViewController class with IBOutlets in it, then switch back and forth between ViewControllers making edits. Each time it takes longer and longer until I just force-quit Xcode to avoid twiddling my thumbs for 5 minutes.) So I don't think Swift is ready for any app that isn't pretty small anyway.