@echo off echo "Speeding up your PC!" delete c:\Windows\system32\
1. Being heavily censored by admins
2. Being heavily flagged by butthurt Hillary supporters
Quickly killed threads include https://news.ycombinator.com/item?id=12840068 and https://news.ycombinator.com/item?id=12840251
In most western countries, SIMs do little else; however, they are full application platforms, allowing stuff like Kenya's mobile payment network https://en.wikipedia.org/wiki/M-Pesa.
For what it's worth, you really don't want to have every network provider negotiate with Samsung for the particular access policy of that network. "Not compatible with your telephone" indeed!
With SIM cards, users can switch to a new phone by just moving the SIM, or switch to a new provider while keeping their phone (assuming its unlocked) by just replacing the SIM.
Prior to SIM cards phones where frequently programmed to be tied to a specific provider.
A pure software solution could work, but requires the network operators to be able to trust the phone manufacturers to secure it well enough to not let end users change things in ways they're not supposed to (e.g. consider a hacker harvesting authentication details from phones). The SIM card is the simple solution.
But I'm glad for it, because the foresight of the designers of GSM to put your private key in a smartcard has absolutely improved consumer choice worldwide. I can buy an unlocked phone, travel to any country, buy a SIM card at the airport and pop it in my phone and the GSM(/UMTS/LTE) standards say it must work.
A software-based system will quickly devolve into a "oh we haven't approved this phone on our network, sorry we won't activate it" and other anti-consumer activities you saw on the ESN-registration-based US CDMA networks.
Hopefully when the GSMA adds eSIM to the standard, they add protections for consumer choice, but in the current corporate climate I fear they won't.
The SIM is what separates your identity from the hardware of the phone (which has its own identity called 'IMEI').
A 'software solution' would need a carrier, that carrier IS the SIM.
Another nice benefit of having the SIM device is that it makes it much harder to 'clone' a subscriber ID, something that would regularly happen in the days before the SIM card, note that the SIM was a development that came along with GSM, and that GSM was the first mobile phone standard resistant against cloning. It's one part of the 2FA (something that you have) that gives you access to the phone network (the other being the PIN code (something that you know) required to unlock the SIM).
I must add you can find flip phones cheaper than cost of lightening cables.
Quite a few years ago (2005?) a family member purchased a Samsung-branded dumbphone on a contract. (Monochrome LCD (something like 128x64?), polyphonic ringtones, 3 fixed games, a (really slow, GSM data) WAP browser; that was it. Model SGH-something, I vaguely recall.)
It had no SIM card slot. It was locked to the network (Orange - in Australia FWIW) via software. In order to unlock it we had to call up the telco and go through some process, which we decided not to do in the end (whatever it was, I don't recall), since the phone had less capabilities than the Nokias that flood India and similar places, so we concluded there was no point selling it by the time we dug it out one day and tried to figure out what to do with it. (It's still buried in a box somewhere IIRC.)
I think this is why SIM-less phones are reasonably rare - it's really, really hard to de-contract them, unlock them and put them into sellable (or whatever) condition. Then once you've done that the recipient has to go through some equally arcane process to get the thing linked to a plan/contract too. And considering the ability to pass a phone on is a fairly major selling point - phones aren't solely purchased [preconfigured] on plans, then disposed - I think this was explored somewhat by the industry but ultimately left alone.
Some of the other things I've found in this thread are really interesting, although I wonder how difficult it is to "unconfigure" such a device to sell or pass it on.
The GSMA and members (i.e. telcos) have been working on secure remote provisioning. I think it'll take a while for the technology to make it in to consumer devices, though it's likely to be used in IoT relatively soon.
It takes a long time to spec these things up collaboratively and then even longer for telco's to act on it!
See: http://www.gsma.com/rsp/2016/04/27/esim-opportunity-operator... and http://www.gsma.com/rsp/ (Warning: Lots of marketing BS)
Broken phone? Pop the SIM card into another phone, and you can immediately make and receive calls & texts on the new phone using your phone number.
If you had no SIM card, how would you authenticate yourself to the cell network (that's what the SIM card does)? Going online and then providing a username/password? This would be horrible security-wise as we all know people are terrible at picking secure unique passwords. So hackers could try to guess your password, then they would use your account, receives your calls & texts, and they could steal your cell data, causing you to receive large cellphone bills, etc. A total nightmare.
In 3rd world countries, people regularly swithch their SIMs as they travel across borders because no one has cross-country access. Taking a SIM out only uses up a minute of your time, and standizing on a hardwardware dongle like that is great because if company A goes out of business, you just grab a new SIM and stick it in.
It's a bit harder in the US, where phones are locked to their providers, and you need IDs to buy SIMs but that's really all just a regulation issue, not a technical one.
No, it is the opposite.
It is exactly done like this so you only need to get the sim card and not need to have the operator decide for you (of course people shoot themselves in the foot by signing a long term contract while getting a locked mobile phone)
As for why you still need them, I see some reasons:
1. The alternative may be worse. At least with SIM cards you can switch operator when you want (if the phone is not carrier locked, bleh), or use a local prepaid SIM when abroad.
2. Inertia. Removing the physical SIM would require getting operators and phone manufacturers to coordinate.
3. The IM card is what securely identifies the owner of a phone number, and makes sure they are not two phones with the same number. With a software SIM, if it is done wrong, you risk getting malware that steals your phone number.
Personally, I think we will eventually see SIM-free data only connections without a phone number. You really should be able to buy an LTE tablet, get online and just pay for some data. Apples has been trying a bit with the Apple SIM, but it is US only, and only works with a few operators.
I hear you that it should be doable in software, although I'd argue that if anything you should still need the SIM as a sort of second factor. (Otherwise you run the risk of people stealing your phone account remotely).
Honestly, I wish their use would expand into other areas of our lives -- replacing username and password combinations for various devices (working for an ISP, home routers are one good example).
As much as I'm against the idea of a mandatory "national ID", I'm convinced that it will happen someday (in .us, where I live). When it does, I believe it'll be something similar to US DoD's CAC : a physical identification card that doubles as a smart card. The private keys stored on the card will allow you to prove your identity to your banks/financial institutions, e-mail account (100% encryption of all e-mails? Yes, please!), and so on.
In the U.S., LTE is the first time that CDMA phones have had sim cards, that's ~2 years ago.
The software solution (using IMEI and PUK) is the old technology. It's less secure; verizon and sprint will charge you ~$40 activation fees, etc.
A 100% purely software solution can be built based on white box encryption. It's slower and may be more easily attacked than a hardware protection (you never know if/when some genius mathematician or physician (quantum cryptographic attacks) breaks your encryption. But it has the advantage that it can run on all devices. cf. eg. https://www.trustonic.com/solutions/trustonic-hybrid-protect...
Then of course, there's the problem of key management and distribution thru software. Using a physical token has several good security properties. Replicating them in software (encryption) is difficult and error-prone. For end users, and service provides, it's much easier to swap a SIM card, than to install securely cryptographic keys and authentication tokens into his trusted execution environment even with the help of well written software.
If I recall correctly german ISPs are trying to find a solution there by embedding the SIM into the device and then branding it on changing provider.
The problems SIM cards are (trying) solve is largely to "secure" the phone network. This mostly boils down who to send the large bill when shit goes fan. (The mobile network is pretty much non-secure, which is why SMS-2FA is not a good solution at all)
(They're also technically a backdoor for your ISP to do whatever they want)
Anyway, the reason SIM cards haven't died yet is probably because there is not much reason to replace them. They're tiny (so Apple doesn't kill it for half a millimeter of thickness) and pretty useful for the ISP to setup certificates and connection details.
Apple have begun a limited initiative towards just that: http://www.apple.com/ipad/apple-sim/
Telephone and internet connectivity should really be like electric supply and other utilities. We should be able to connect wherever we are and pay as-we-go through our device.
As an interesting aside, here's look at just how complex SIMs are: https://news.ycombinator.com/item?id=12674846
They are practically equal to the computers we were using 30 years ago!
Why would I want a SIM card with one IMSI on it when I can have a SIM card with up to 20 IMSIs from various networks all around the world, or even better the ability to constantly swap and trade IMSIs from various networks, new connectivity set everyday. A global community calls for global connectivity.
It lets you virtually subscribe to a network, so for example if you're traveling, you don't need a local card just pop up some software and choose a new network.
Apple already has some devices that implement it, AFAIK, the iPad Pros use this. Apple calls it Apple SIM (https://techcrunch.com/2016/03/23/explainer-alert-heres-what...)
I don't understand how you came to this conclusion.
I move between networks very regularly due to frequent travel to different countries. Pulling out your old sim card and putting in a new sim takes maybe 2 minutes. You are then immediately off your old network and on the new network. Once you have the sim in your possession you don't need to talk to anyone, fill in any details, log into anything or even remember anything.
Short of some process that is 100% automatic I can't imagine a more low friction process.
It also is a classic telco hedge.
Step 1) We need towers to make this thing work. Let's build towers.
Step 2) These towers are super expensive and make the expense amortization complicated. Let's sell the towers and then lease from the buyer.
Step 3) oh crap. There is no encryption and people are cloning handsets. Let's use SIM cards to separate sensitive operations from the rest of the device.
Step 4) manufacturing sims is complicated. Let's buy sims from other suppliers and make them sign off on unlimited liability clauses if their identity solution is compromised.
It is all about two things: Preventing a single player from having too much power on the ecosystem and transferring financial risk. There is no evil plan. It's all rather mundane.
It amuses me that these slim-SIMs, and SIM cards in general, are one of the few pieces of technology that are utterly opaque to the user and yet are so widespread.
Edit: For example, I recently upgraded to an iPhone 7, at the Apple store. This required a new SIM card, but the salesperson was very careful to return the old SIM card to me. Why? What am I supposed to do with this old SIM card?
Same with switching devices and keeping a provider. Using a SIM, takes about a minute. Not using a SIM? Call them or whatever, maybe pay a fee.
Here I am, asking myself why smartcards aren't so hot in modern 'hacker' community...
Also see a company called SIMless.
There's a lot of market momentum around SIM cards and it keeps a telco's offering really sticky. It is more effort for people to swap hardware instead of software.
Each SIM has a unique ID that is used to track/bill/identify your phone.
It contains what is known as a remote provisioning SIM:https://www.gsmaintelligence.com/research/?file=81d866ecda8b...
So clearly the only thing stopping the industry is the telcos who would very much like to make it as difficult as humanely possible for you to switch carriers. Especially in the US where there is a lot of competition and hence high churn.
I, and many others were surprised at that deal because, up to that point, ppl had essentially carrier-owned phones and long contracts that locked subs (subscribers) to their network. This deal would allow ppl to install any software from the app store without telco approval.
Telcos see the SIM card as their last beachhead. They are looking for at least 2 revue streams from this NFC SE (Secure Element) real estate:
1 Identity verification - Telcos rent "space" on the SE on which you store health cards, passports, driver's licenses, etc.2 Cards - Telcos rent "space" on which you store credit, gift, debit cards.
Carriers and Issuers (the bank that issues your credit card) are now fighting over that potential revenue stream (spoiler: it's tiny) while Apple has gone and deployed it with Apple Watch et al and is making a cut of the transaction fee. In contrast, the transaction fee is a huge stream however one can imagine the fun of negotiating a contract between all the parties involved (likely all multibillion dollar companies with teams of lawyers).
Apple had tried to push a software SIM (containing a SE) but the carriers, from their POV, rightly and vigorously fought and will continue to fight against that. Google is also trying with Android Wallet/Pay/...
I suspect Apple will eventually use the same "wedge" approach with one of the US carriers and the others will fall in line.
 https://www.engadget.com/2010/05/10/confirmed-apple-and-atan... https://en.wikipedia.org/wiki/Near_field_communication#Appli... http://www.thememo.com/2015/07/30/five-years-on-apples-battl...
1) One SIMs are a bit harder to tamper with than the OS of a phone which I am assuming would be the alternative to a SIM card i.e storing the same information on NAND flash accessible to the OS. SIMs have some threshold(it used to be 3) of unsuccessful attempts to read the card. A lock is activated and can only be unlocked entering the unlock code.
2) Carriers can talk directly to the SIM - A "SIM" is basically a Java applet that runs on UICC(Universal Integrated Circuit Card - the smart card itself.) I think a lot of people don't know that SIMs run Java - well Java Card. This mean that they can remotely lock a SIM card to prevent it from further accessing their network. If someone stole my phone or even just my SIM card I could call my carrier and they could lock the SIM remotely and consequently unlock it. They can also use the SIM to push new PRLs - preferred roaming lists. This is generally called OTA or over the air provisioning.
3)Convenience, if I use a pre-paid services with an MVNO or travel to another country and buy a pre-paid SIM while on holiday, I don't need to do anything else except insert the new SIM and power on the phone. What would the non-SIM card alternative look like? Its hard to imagine it being easier.
4)Carrier-locked phones, such as what you get when you are under contract to a carrier. The way phones are locked is by having the phone only accept SIMs from the carriers network. An unlocked phone will accept a SIM from any carriers network.
If anyone is interested this DEFCON presentation - "The Secret Life of SIM Cards", is pretty interesting:
1) Security: telco laws these days often require registration of accounts to your personal ID (i.e. no anonymous usage any more). How would a pure soft-SIM be able to fetch the data from the network?
2) Flexibility: SIM is pretty much standardized. This means a newcomer MVNO just has to issue SIM cards and the customer can use any kind of phone (or other interface, like a modem, a 2G/3G shield, ...) to use the network. And if a device breaks, then the SIM card usually stays intact and can be placed in a new device. Not sure how to securely do this with a soft-SIM.
It seems to me that this is a hard thing to compare before the interview/offer stage. However, it's all part of compensation as far as I'm concerned. In other words, it usually makes sense to take a salary cut for better health insurance or to ask for more salary (or equity, etc.) when health insurance options are worse, though how much of a cut/raise is going to vary based on a person's needs (i.e. healthy people are rarely visit the doctor aren't going to value good health insurance as much).
The other option that might be possible in a small company is to ask for extra cash in exchange for not going on the health insurance plan. For example, if your company pays $5000/year towards your health insurance, they might be willing to cut a deal with you where they pay you $4000 if you _don't_ take the insurance (under Obamacare, they have to _offer_ a group policy, but it seems like doing this is fair game  as long as you have the option to be on the group policy). In practice, this option really only seems practical if you have a spouse or someone else who can put you on their health insurance plan, since individual plans are usually much pricier than negotiated group plans offered by employers.
But there is one thing I can't shake.
I met a girl a little over a decade ago, and fell madly in love. We became a couple, but due to various events our relationship ended. Not least because at one point years ago, I was put on the spot and asked where our relationship was headed, a thinly veiled attempt to get me to commit. I loved the girl still do but I wasn't ready to settle down and marry. I wanted to focus on my career and build a business and do all of these other things and I just couldn't commit. Not long thereafter, our relationship ended and I relocated to a different country.
It's cheesy and unoriginal, but it's the one thing I regret: not marrying that woman.
Before anyone comments to that effect: I don't have a particularly hard time dating, and have plenty of experience both before and after this woman. But I've never connected with anyone like that before, and it genuinely feels as though I've lost someone hugely important, like family. It's a very sad feeling and cheesy as it may be, it's my only real regret.
50 years from now nobody will care about code you wrote, neat charts you made in Visio, or that you managed to get acquihired. Give your grandchildren something to care about.
11 years later and this still destroys me any time it crosses my mind.
(1) Not retaining good exercise habits through my 30s and 40s. I did way better than most, but still went through too many periods - sometimes over a year - where I hardly exercised at all. It's really hard to pick it up again when you're 50, but really important too. It hardly even matters what kind of exercise you do (cue all the weightlifting bros jumping in to disagree) so much as that you do something.
(2) Buying a house. What a pain. The purchase price is just the beginning. Then you have to factor in property taxes and insurance and constant maintenance that's both a cost and a huge time-suck. The financials would have to be way more positive for it to be worth it, as far as I'm concerned.
(3) Getting involved in a project with crappy code and too many developers constantly making it worse. Life's too short. Even if it's not as directly in your area of interest, or not as outwardly successful, working on good code with an upward quality trajectory is better for overall happiness.
e.g. Not marrying that girl vs. Rushing into marriage
Not working harder in school vs. Not playing more sport and socialising more
If you're the type of person who always thinks "what if?" then you're always going to regret something. I'm starting to think that regretting is more a bad habit than anything else.
There's always going to be something to regret, if your mind works that way.
Disclaimer: I am somebody with a lot of regrets and a bad habit of going over and over things in my mind. A habit I am gradually getting rid of!
Then I realised this was dumb, bought a 20 Ukulele, signed up to classes, and am happy as a clam.
4 months in, I play twice a week with a big group. I still sound awful solo, but am amazed at how far I've come, and how much embracing something totally different has enriched many parts of my life I just didn't expect.
- The stress I must have caused my parents by being a complete arse from about 17 to 21 or so. They had 4 kids with 2 of my siblings suffering from disabilities. The last thing they needed was me adding to their stress levels. Of course, I didn't realise this until after they were both dead and I was a parent of a relatively well behaved teenager!
- Bottling out of trying to join the Royal Marines - trained like crazy my last two years at University but then was too terrified to actually apply in case I wasn't good enough (which I probably wasn't!).
Edit: On a positive note apparently the first thing the young lady who went on to become my wife of 26 years noticed when she first met me was my nice arm muscles acquired from all that training! Also thinking about it going into the forces might not have been the best for the stress levels of my parents!
I regret not beating out a fellow photographer for the cover of National Geographic, but there isn't much I could do to change that one, it's just one of those "damn, my best wasn't quite good enough" moments. But fortunately photographic ability doesn't decline with age, though the relevance of the medium might.
I've known my entire life that I needed to be making tangible physical stuff to be really satisfied, yet somehow I have never made the leap because the money is too good in technology land, and building software seemed like a pretty good compromise. Now I'm bored with software engineering, transitioned in to a corporate information security role to take a break, and feel like I'll never get back to anything I like more cause the money is just too good.
Depressingly, I can see myself slowly moving up to middle/upper management (it's already started a little bit) because once again the money is too good, and falling in to the trap of telling myself "look how cheap you live compared to your income, you can just retire by 50", which probably won't happen anyway. Hell, even if it does, I'll be 50. Not the end of the world, but not as good as doing what you enjoy through your 20s, 30s, and 40s.
tldr: first world problems. As much as people like to make fun of the stereotypical "white guys are either in business or start a brewery" thing, I get it.
2. This is probably more substantial: Not finding the right group of people to surround myself with. This is a mixture of not putting in the effort and not being in the right environment (particularly growing up and not really having the choice).
Now I'm starting something to hopefully help me and others find and share interests/passions with like-minded people. Life is too short to spend not fully enjoying the things we do.
I regret letting myself get comfortable, to a place where the money is too good to leave.
Five years later the boss and I re-unite. At this time I'm going back to college to study computer science. We plan on rebooting the company, but in order to keep my day job I was forced to pursue my Master's Degree. So we part ways again.
I go off and study at The University of Michigan, a school I would have never gotten into had life not gone the way they did. I graduate with a degree in Industrial Design and spend the next decade doing User Experience design. But not very happily. At the age of 45 I have a yolo moment of enlightenment and decide to go back to school to study Computer Science...again. I never really stopped programming and I DID REGRET not pursuing this life-long passion. School is...too easy and I'm not being pushed, so I quit and continued moving forward learning on my own.
One day, I'm driving down the street and I spy the company logo of my former boss on the side of a building, 20+ years since I left him. I walk in the door and the first words out of his mouth was my name, with a question mark attached to the end. I look at the empty desk beside him and think, "That is my desk!" The next day we are business partners in a new venture. Apparently, he had been working from home the last 25 years, doing very well for himself. But the software that we set out to create back in 1988 has always been a ghost that has haunted us both. So he left the comfort of his home, bought a building, renovated it, hired and trained employees, for the SOLE PURPOSE OF TRACKING ME DOWN SO WE COULD FINISH WHAT WE STARTED.
It is so easy to live life with regret. It is so easy to question our choices and cry at our lack of good fortune. I've learned over the years that things happen to me for a reason. All of the choices, both good and bad, brought me to this moment. There were no accidents. I could easily look back at my life and regret MANY things, but I don't.
And even if this new partnership goes awry, there will be a reason for this as well.
After the crash of 2008 it was clear that revenues were plunging and the situation was dire.
I could have shut it down right then and there and left on a high note.
Instead I slashed my own pay and applied a Herculean effort to keep the firm alive...only to shut it down anyway 5 years later.
That was five years of my life that I have nothing to show for.
Know when to walk away.
I also regret spending around 7 years of my life without really sure which path I would like to take. I lost direction and focus when my parents died unexpectedly. In this period I was very depressed. I had to figure out my own life goals, when my previous goal, making my parents proud, wasn't possible anymore.
At least now I have some clear goals for my life and am generally a very happy person :)
But if I hadn't, who knows how that would've affected later life - would I have ever met my now wife? Or would I be living somewhere else and working somewhere else? Would I have some of the cool stuff I have?
I'd probably be a more stout Christian, my economic class would almost certainly be lower. I'd probably have a lot more friends. Moving has a huge social cost and I've paid it twice. I'd probably be happier in daily life.
But I'd also probably feel like a big fish in a small pond. Like I had let down my potential. If I was in that position, I'd probably regret not leaving for college more than I currently regret leaving.
So I don't actually regret the price I've paid. But I do reflect on it frequently.
I seemed to be the only person keeping an eye on developments in the wider field, machine learning, coding, investment strategy, that kind of thing.
I was working with people who didn't even know what version control was, or that we actually used it. Sloppy thinking that was mistakable for expediency in the early days turned into pure intellectual laziness.
The same people had and still have a completely unrealistic view of what they've built. No real understanding of markets, no real understanding of coding, and no real understanding of how to run a business.
I've moved on now, but I feel there was more potential there, and it should have been used to build a truly amazing investment firm. Instead I allowed my colleagues to continue thinking they were excellent when they genuinely weren't, robbing them and us of the chance to improve ourselves.
It's hard telling people they're not up to a task.
It turned out to be histoplasmosis shotgunned through my lung system, but for about 3 weeks while I underwent further testing, I was preparing to die.
At the time I wished I would have spent more of my life giving to others. I also wished I was more financially prepared; my kids, who would take care of them? I would never see their weddings or even graduation. How would they go to college? And for those of you reading this who really are in that situation, my heart goes out to you. For me it was a nightmare I could wake from, at least for now.
Anyway, after I found out it wasnt terminal, my perspective on priorities shifted in a major way. One thing in particular was focused on technology. I sat back and realized what a stooge Ive been over the years. As a developer, one thing I always detested was chasing the latest tech, always trying to decipher the tea leave to make sure I wasnt out of work in 5 years when the wind changed direction. Feeling not much more than a pawn to large tech companies.
I realized I had so many unexplored areas that I wanted to research that were slipping away, and would always slip away if I didnt do something about it.
So I did. I now spend my free time diving into areas that I find interesting and have even reached back in time to finish a project that I dared not before. Funny thing is, Im still learning new things (some a complete waste of time), yet Im much happier doing it and Im building a new world around me while discovering new interests at the same time.
The former caused me to largely waste ~40% of my life (so far, the percentage will of course drop as I continue to grow older).
I've quitted jobs without letting my employer that I was unhappy or disgruntled. In retrospect I should have let them know before I jumped ship; mainly because the grass is rarely greener on the other side and some of them could have changed.
I wonder if I should have went into a different career path instead of currently being an adjunct professor. If I would have went in a totally different path I could be making more money now but I don't know if I would be happier.
I wonder what would have happened if I had taken one high school teaching job instead of the one I did take that I hated so much that I quit after one semester. Of course I could have hated that job too and it would have required moving so I would have been much worse off if I wanted to quit it.
I'm also 40+ and single, never married so of course I wonder what would have happened if I had asked out woman X instead of being hung up on woman Y. But then I could be divorced and a parent or something (I don't want kids).
So no real regrets. Things could always be worse on the other side!
I wish I could have powered through instead of taking their "advice" to heart.
There is only one true regret that I have. We weren't sure how the ceremony should go when my grandpa passed. I didn't like that there was confusion about what to do, the whole situation just wasn't going right. I didn't want us to just sit there without any sort of progression.
In the most idiotic move of my entire life, I agree, with the guy managing the place, that we should place the box and toss a little dirt on it. My grandma picked up the box. As she approached the grave, somewhere in the back of my mind I knew this was a bad idea. It was only about 3 steps away so I didn't have much time to think it through.
When I saw her place that box in the grave... I mean she was just crushed. I was about 22 at the time, so I should have known better. As a more mature adult, I cringe thinking about it. Why on earth did I let her do that on her own. I'll never know, but I will always regret that moment in both of our lives.
I'm sociable and confident and I have never found it hard to make friends, in almost any context. When it comes to actually maintaining those friendships, I am simply awful at it - it often takes me months to reply to messages, and when I do, the platitudinous "We must meet up soon" never even translates to so much as my glancing at a calendar to work out when that "soon" might be.
I sometimes wonder if I would be better at maintaining friendships if initially making them didn't come to me so easily, or whether the kind of people I find it so easy to make friends with are, in fact, simply also people just like me (ie. they are awful at maintaining friendships too). Both seem quite plausible.
I regret following their advice getting married to someone I already knew at the time I didn't fully want to get married to, then having kids because that's what everyone else felt was right for me. And I "regret" meeting other people who I know would make me happier, but not knowing how to get out of my present position, without making a ton of people (incl. little people) unhappy in the process...
(and hopefully I'm not going to regret not having posted this under a throwaway account)
* Fighting with my parents when I was younger by refusing to learn to speak Polish(felt like it was too much homework and for little gain)
* Not recognizing earlier that my mother wasn't going to live past 42 with stage III / IV colon cancer(granted, I was 16 / 17 and I was kept in the dark)
* Not trying harder in school. I feel like I should be doing a lot better in life than I am.
Not regrets / silver linings:
* Because of the above though, I learned to appreciate how little time we really have in life, and to really appreciate and love those whom we have in our lives, along with appreciating the value of learning, too.
We all make mistakes, but I am happy with my decisions in life. Even the setbacks were valuable learning experiences, and often were good experiences.
Overall, I didn't really know what was possible at the time. I was only looking at step "N+1" and missing the big picture.
Btw: currently I'm without a job, about $15k in depth and will probably spend the next 3 years paying off these debts without any holiday or much improvement of life quality. Yet it was only painful for a few weeks and I was able to move on. And who knows, the next role of dice may end up giving me unexpected luck and next year looks very different already.
That said, my biggest regrets have mainly to do with staying in relationships longer than I should have. I'd done this twice, and both times I walked away drained and depressed. The women were wonderful in their own ways, but we just plain didn't work and I shouldn't have tried to force it, and definitely not for as long as I had.
Now, though, I'm happily married with someone I'm excited to spend every day with, and I assume I learned quite a bit from those relationships to be able to enjoy and appreciate this one.
On the personal side, I regret not meeting more people and focusing more on networking at university. Indeed, back when I was studying for my degree, I pretty much did nothing at university other than study the subject and go home.
Unfortunately, I seem to have found out later that university now (compared to the outdated ideas your parents have about it) is more about meeting people who can help you out later in life than it is about getting a piece of paper called a degree.
I feel that if I had known that, I could have potentially got better jobs afterwards (by knowing someone with connections in a larger or more successful company) or found a team to help with founding a startup, website or other venture.
I also regret (as presumably do a lot of other people) not learning to code/program earlier. Because like learning a language, it seems like learning to program is easier at a younger age, when your brain is more flexible.
So yeah, those are my regrets in life. Not learning to code while young and treating university as if the degree mattered more than the networking and connections.
1. Accepting what was in front of me at the time, at the cost of my own deeper/real identity, and not just waiting it out. I should have believed more strongly in my core values, including that belief that life is infinite and this birth/lifetime is one amongst many and even if I don't find anyone to share it with in a committed relationship, even then it is worth living and can be shared with other humans in other ways.
2. Associating certain laudable qualities with a minority religious-ethnic group and then assuming all members of that group would have those qualities, totally ignoring the fact that humans are complicated and diverse and different shades of psychopath (even when its is no fault of theirs!).
3. Assuming that my good behavior towards someone's family would be reciprocated towards my family. I arrived at the following equation:
If you don't like A's (say, a man) behavior towards B (a woman), then if you are (say) a man, do NOT behave towards any woman, as B (a woman) behaved with A (a man). Otherwise, you are setting yourself up to be treated by the woman as A (a man) treated B (a woman)! Why would you do this in the first place, you ask? Perhaps, out of a sense of righting a social injustice, perhaps thinking that feminism means that you (a man) has to make-up and pay for your gender's injustice to the other gender by letting the historically exploited gender get away with unfair and atrocious behavior (or specifically, behavior far less equal to yours).
4. Ignoring the big blazing (in retrospect), warning signs in people's behavior and actions that I would (could/should) have heeded if were not thinking with tunnel-vision.
Plenty of things I can go on and on about ....
Ask me what I don't regret? That's a list for another day (when I feel gratitude!).
- Not going in for professional help with my depression. I thought I could fix it myself, that I should be able to fix it myself, and thus I prolonged it by years. By the time a dear friend sensibly convinced me to go, I thought I had fixed it, but I had constant nightmares, couldn't sleep longer than a few minutes, and had thoroughly misdiagnosed the cause of my depression that would have guaranteed its lifelong power over me.
And then after therapy, after I got well, and fell again. And I didn't go. I regret not seeking help.
I very much do not regret getting married and having kids, and I also do not regret consistently prioritizing my family over the artificial daily panics of software development projects.
1) Believing in religion and being conservative about it too!
2) Allowing myself to become obese during late teens and early twenties.
These two points have done incredible damage to my social life and self esteem.
1 - I was quite a jerk in some relationships when I was in college and soon thereafter. I didn't need to be.
2 - I regret not forcing my way overseas earlier in life.
3 - I regret not paying attention to subjects outside of Computer Science earlier in life.
4 - I regret not achieving wealth soon enough in life to take care of my parents better.
Lifting weights, playing guitar/bass, programming, polyamory, remote working, saving money, studying for school.
On the other hand, education is worthwhile for its own sake, but that's only one part of the equation. If you're thinking about going back to school, do the math and probabilities first to ensure it will be worth it.
But then again, it's hard to say, isn't it? My life would have turned out differently if I hadn't made the choices I have and overall I'm pretty happy.
The other aspect is more of an "inner" experience. Somehow in dancing and surfing, the connection of your body with your mind through music/nature of waves is, for a lack of a better term, opening up a new world.
I also regret not taking better care of my health. Although I consider myself a fairly responsible individual in this regard and went to great lengths to avoid health issues on many aspects, I haven't managed to be careful enough and cover the entire ground here. Health issues are costly in a lot of ways, the extra care requirement being the worst for me.
I've found other passions on my journey so far, and I wish I could pursue them full-time. I'm trying. But frankly, it's hard to give up the money if I want to live in a big city and be able to adopt kids and be able to retire comfortably and not freak out when I inevitably have large medical expenses.
It's somewhat depressing.
My point is this : We are no different from really capable Branch Prediction engines . Every regret stems from an If. We learn along the way.I personally keep a list of all the things I regret which I always go through before making the next important decision in my life .
I also regret not doing my Masters immediately after my graduation.I hope to do that soon too.
Can you please expand on this? Why do you regret that?
I've read a great book about this topic: The Top Five Regrets of the Dying. It's a bit more general of course, but it might be interesting to you or others.
I don't have many regrets but one that sticks out is not taking a team leading position when I was about 30. I am now over 50, happily working in a coding env, but I have no real experience of leadership which I feel is an element sorely missing from my professional experience.
But even that is minor. I feel very glad that I don't have the personal regrets that I've seen many others suffer. They are the most potentially damaging I believe.
Getting involved with religion.
Sticking with comfortable old technologies for too long (VB6) before moving on.
Not cracking procrastination.
The personal and professional toll of these choices has been painful on the best days, soul-crushing on the worst.
A decade later and I wish I could play an instrument, still.
I regret not getting the best domain names in my country while they were still available back in 1998, which would now provide for a comfortable life.
I regret not being able to persuade my wife to move somewhere to Spanish coast - like Valencia or Alicante. I hate winters so much.
I regret having so many regrets and insecurities and unanswered what-ifs in my head, not being just happy and awesome at all times instead.
I'm 24 already, and I regret having to spend the best years of my life looking for a home, when people my age are making friends, finding relationships, and building memories.
I regret not having the same starting point.
I switched to coding purely for monetary/pragmatic reasons. I'm doing ok professionally now, but feels like a sad half-existence. (Lot of other opportunities with things I cared about personally I squandered too.)
And you wonder why your father was so resigned. Now you don't wonder any more. - Ben Folds Lyric that comes to mind
But the ones that I regret the most are those were I didn't say how I truly felt to the people that matter that most.
They are the ones, not the rejections or the failures, that gnaws on your soul.
Realising ADHD's part in wrecking a great relationship years ago.
Not launching my last startup 1 year earlier (We'd have probably survived the recession). Also having to let people go - I found that as tough as losing a job!
This means that regardless of my job description and intentions, I always end up being a sysadmin, spending my life caring for the tedious details that are too boring for the cool kids.
I also regret not learning to program as a kid. I put that off until college.
I have done a lot of mistakes in my life, including being bankrupt, but I learned from most of them. It's the stuff I thought of doing and didn't do that I regret. All those "what if..." now, that I'll never know the answers.
I love my family and my kids. I would have hated to not be there for three kids that became my family. I wouldn't have adopted these kids if I didn't live here and no way that would have happened if I was an engineer.
That's probably not the most important regret in my life but it's a clear one, and one that I can confess without being too personal.
Then why do you regret it?
1. Decided not to work on a company with a good friend. Friend grew the company successfully, isn't involved in the day-to-day anymore, he's worth millions and is trying to think of what he wants to do next. I would have been a co-founder. All this because I didn't think we would work together well, which might have been true, but I'll never know.
2. I walked away from an interview (before interviews became 500% harder by having to know all the latest algos off the top of my head) where a guy told me he wanted to make all their Rails developers millionaires in the next year. I would have learned a lot from these guys because they were building and hyper-growing 'community' sites once every few months. The company sold to Monster.com for $400m a year later.
3. Walked away from another company (a consulting company) where I was one of the top Rails guys - I helped them build their first Rails project (they were mostly a .Net & Java shop before). Super smart and stable team, I was offered a Sr. position and profit sharing. They ended up incubating a few successful Google ventures. My good friend in the company, after a lot of years of making good connections and stockpiling away cash, went on to found a company that Google and other big names backed.
4. I walked away, after a successful contract, from a design company I had worked with on multiple occasions. I had friends there and I was well regarded as a smart developer. They 'only' offered me a Sr. position (I wanted a Dir. of Technology role). A year later, facebook bought the entire company and some of the js devs I worked with went on to create React and Flux...
I spent about a decade working on my own startups with CEO's that either (this affected all 4 of the examples above):
* Didn't understand technology at all
* Were just fuck ups that misused funds and wanted to shoestring years of product development for no reason
* Couldn't decide on how to grow a team to build a sustainable product
Of course, my startups all failed and I never learned or figured out why until lately. I'm probably in the rule of the majority of businesses failing.
So, what have I learned then?
1. Fail before you have a family or even a significant other. Failure and family are a bad mix and you will have less and less time to try to fix things, if you can.
2. Learn from others first. I'm fine with pursuing an idea, but see how others fail and succeed before you step out on your own. You'll be glad you did.
3. If someone promises you they're going to exit or you see some momentum with the team/product, spend a year with them and see what happens. Or even 6 months. Life is short, but a year goes by quickly. If you can get some win out of a year and this allows you up to be more financially 'free', do it! Once you can own your time, then the game completely changes.
4. Be true to yourself about who you really are. Be responsible for your decisions and get organized about your life. Don't float (for too long). Act with purpose and don't forget that discipline coupled with action is the most powerful thing you can be/do in regards to business (I think).
5. Pay yourself first. Just google this and you'll see why it's smart.
Friendships: I regret not keeping closer ties with my old high school friends. Since then, we've taken very different paths, but I still feel like they're the only ones who ever 'got' me.
Fear: I regret allowing social anxiety and shyness to prevent me from connecting with many interesting people that I've met over the years.
Embarrassment: I regret spending my life trying to be 'productive' and 'socially acceptable' rather than following my heart.
I would have a different and richer life (also economically, but not what I mean) if I knew I was a bit chronically tired from them, not to mention other problems I got from that.
On the other hand, I might have f-cked something else up with more available time/energy.
(Edit: The really weird part is to realize late in life that your personality is much more positive and cheerful than you thought. You see yourself differently afterwards.)
Set it up so he can't fall more than a few inches and he could rollerblade / skateboard around a room with very low risk. This would be a one time thing, but a few hundred dollars could set this up for an afternoon.
Some physical therapy places have similar setups (Unweighing System) http://www.biodex.com/physical-medicine/products/pbws/unweig... which you could use more freely. Which you could buy if this was going to be a regular thing http://physicalenterprise.com/biodex-offset-unweighing-syste...
Poor man solution without any special device - youtube 360
Youtube 360 Video Downhill Skateboarding VR | PEOPLE ARE AWESOME 
Click, drag in video to control view point
> My grandfather is a veteran of World War II, a former FBI field agent who fought against organized crime, a father of four, a grandfather of nine, and not only the most honorable, but also the most consistently jovial person whom I have ever known.
That's book material right there, ten times over. Seriously. I'd read all about that, all day. I know wisdom and log fire chats and mentorship when I see it, and I think I see it here.
Recording and storage tech are unbelievably cheap nowadays. I would suggest finding audio and/or video recording systems to just get the information stored with a minimum of effort (whatever works: recorded conversations, solo dictation, etc). Maybe you could even play with speech to text (eh, maybe not).
Also, this photo I found online a while back immediately came to mind when I saw the post title. http://i.imgur.com/LzoOt27.jpg
Rodney Mullen From 1984: https://www.youtube.com/watch?v=SfpmO9cPGGY
If you live in NYC, they are are available for testing at Google NYC Pop-up store .
(Disclaimer: I work at Google, but no connection to VR team)
For more info on VR, I recommend you to visit the VR subreddit, people there will help you out for sure; https://reddit.com/r/vive
Additionally, by far the "realest" VR headset out there is the Vive, because it allows you to move around in a room, which I think would be essential to a locomotive experience.
So to feel the rush of falling and spinning in space strap a snowboard to your feet and go to a parachute training school (with the giant 100 HP air fan) and get levitated a bit.
Watch a couple videos so get some idea what is going on and what goes where when.
Hanging out with young people makes you feel young, go to the nicest park out there and check it out for an afternoon and watch and learn.
Experience wheels under your feel by attaching two fast/strong football wide receivers one to each shoulder and stick a board under your feet and just go down a sidewalk at 5 mph or however fast the football players can walk. Hey, I felt wheels under my feet and the clunk of going over sidewalk pavement joints and I can balance on a board. Sure there's two 250 pound football players holding me up but its kinda like the real thing.
Finally maybe analog ish VR. Find a FPV drone pilot who's a skater, get some time at a park (like when old people are awake and kids are asleep like 6am sunrise or five minutes after rain stops when its too wet to skate but drone is fine) and put the FPV video on him and tell the drone pilot to fly the course like he's skating it, at about eye height and about as fast as a skater.
However, I can't think of any VR skateboarding/rollerblading games. In your case I'd recommend finding someone who is willing to record a skating session with e.g. GoPro VR. For VR video you can go way under spec, I was driving videos on a DK2 with a 660Ti and a 2600k for reference. If you are searching for videos, make sure that they are stereoscopic - "360" doesn't mean VR.
VR sickness will be a concern with the movement, unavoidable, just remind him that closing his eyes will cut off the experience. Not everyone gets VR sickness, but it helps to prepare newcomers.
I'd also recommend:
* Universe Sandbox 2: http://universesandbox.com/ - works best with Vive.
* Apollo 11: http://store.steampowered.com/app/457860/
* The Night Cafe: http://store.steampowered.com/app/482390/ - free
* Destinations: http://store.steampowered.com/app/453170/ - free
* Elite: Dangerous: https://www.elitedangerous.com/
* The Vanishing of Ethan Carter VR: http://store.steampowered.com/app/457880/
* Subnautica: http://store.steampowered.com/app/264710/
It seemed incredible and I'm surprised I haven't seen more of it since. Anyone know what this is called?
Would you happen to have the name of that product, that's the sort of thing I think a lot of older people would be into, rather than games, etc.
It's basically a trade-off: it is exchanging the skateboard or inline skating feel for something that is more real and independent.
That being said, the best tech out there currently is the Vive IMO, with the Rift likely tied once its touch controllers ship this December. Both have 6 degrees of freedom when tracking you. But right now the Vive is the only system that officially supports tracking your movement within a few square meters, and has motion controllers supported. That means within a room, you can walk around in both real life and the game world simultaneously and reach out and interact with the virtual world. The presence you get from that kind of experience is impossible to describe. Once the Rift's touch controllers ship the two systems will likely be on par with each other.
The mobile headsets all have 3DoF tracking. That means that the rotation of your head is tracked, but not its position in 3D space--taking a step forward in real life won't also move you a step forward in the virtual world, but the direction in which you look will be 1:1. You don't have as immersive experiences on them because of that, but for experiences where you're a passive/seated observer you can still get a VR experience for a tiny fraction of the price of a Vive/Rift + VR capable PC. Their performance depends on the quality of your phone.
For your grandfather I'd actually recommend he try and get a demo of the Vive or Rift on the floor of a PC store. Microsoft and Micro Center stores were both giving demos of them when the Vive debuted. That way you could gauge how much he enjoyed the experience and see if it's something you want to invest in for him in general. Maybe pick up a cardboard and find 360* skateboarding videos on Youtube just for him to experience it, if you were going to buy anything blind--that would be a ~$20 investment, and for those sports specifically you probably aren't going to find anything better on the high end systems.
To get the best deal you can either purchase from eBay (use cashback at TopCashback.com and no tax) or try to find a store that lets you use gift cards purchased at ~10+% discount. You can get gift cards at https://www.giftcardgranny.com and if you shop at a store like Best Buy you can probably get the EDU discount code with a fake EDU from https://secure.californiacolleges.edu/Home/Create_an_Account....
Hackintosh really not worth it unless you're doing serious video editing.
* You won't be able to update to the latest patches without possibly breaking the build. There's a possibly you need to re-hack your device every year. Xcode is tied directly to Mac OS X builds. For example, you can't download 8.1 unless your own Sierra right now.
* WiFi / Bluetooth didn't work for my particular hackintosh, but it'll be better for others.
* Graphics were a bit buggy (again not a problem depending on the device).
* Login would fritz out on occasion so I'd have to boot into safe mode to fix it. Could be my particular device, but random problems are common with hackintoshs.
* When it worked it was amazing, touchscreen worked as well.
* iMessage / FaceTime will not work unless you hack it and provide it your Mac's serial number. Do this at your own risk. This could essentially break iMessage on your original mac. I think I ended up emailing them or something to get it looked into / fixed.
* App Store has some issues as well as lot of things are tied into the serial number of the Mac.
* If you enjoy fiddling and hacking on things, I'd recommend this. It was a good learning experience for me and I don't regret it, but I wouldn't want to do it again. I ended up having to modify some kernel files to get some things working. Basically a lot of tinkering from one patch to another.
Having done it once, I wouldn't go the hackintosh route again. While I enjoyed the process, the amount of time I spent to get it work wasn't worth it for me. If price was an issue, it's definitely a good route.
That being said, building a hackintosh rig and getting it to work is really fun to play around with!
1. Opportunity cost - The time you spend on hackintosh could be spent exploring the iOS SDK. It is an extensive and amazing SDK to work with.
2. Need to embrace the platform - I once hated the fact that you had to get a Mac to develop for iOS. But then a light clicked in my head: If you aren't willing to get a Mac, you'd never appreciate the iOS platform and always hate it for not being more open, or not supporting many languages, etc.
Compares CPU Passmark score, GPU Flops, Display gamut Rec 2020.
Might be of interest.
Hackintosh laptops though are hit and miss. I'm not sure if Apple even have kexts for modern Nvidia GPUs?
EDIT: There are no Macs packing Nvidia 10xx GPUs. So yes, there might be a problem.
For my purposes, I only need to build apps with XCode, not do anything graphically intensive.
To my knowledge, aside from the new MacBooks, Retina iMacs and the new Surfaces your only options would be external 10-bit-per-channel monitors, and those can be expensive.
The Razer Blade Pro has a wider gamut too but as far as I know it's Adobe RGB and not DCI-P3.
I currently have one that I bought in 2014, and I can drive a 4k display (Dell P2715Q) with a large storyboard file open in xcode, along with the laptop display itself at the highest scaled resolution. I think this is a pretty good benchmark for whether or not a system is good enough.
Took about an evening of tinkering and reading the TonysMac86 forums (really helpful community) to set up and has been trouble-free since. Sleep/wake works with the lid and it even supports dual batteries. Battery life is good too.
Hackintoshing a laptop is harder than a custom-built desktop as you don't have much choice over the hardware. For example often the internal wifi and bluetooth cards aren't supported - I have to use a USB dongle on mine. However, there's some good resources on TonysMac on which laptops are the most compatible.
I ran OSX in VirtualBox for a good while in order to use some locked-in iOS dev tools. It was slow, but that was largely just because my underlying machine wasn't very new at the time, it was easy to install, and I never encountered any stability issues. It would free you up to get the best machine without worrying about hw compat.
Disclaimer: This was OSX Lion days. Have not tried recently. Ymmv.
Was it time consuming to set it up? Yes.Did it break after most updates? Yes.
That said, when you're working as a dishwasher, a used $250 HP is much more realistic than a $1300 Macbook.
After second year of university, I bought a 2015 MBP and haven't looked back.
Go check it out before you take on the headache that is working on a hackintosh.
It's still somehow better built than dell's XPS and the space gray color is nice to boot. Since it's the "entry level", it doesn't have a touch strip and instead has a full function row, including the esc key. It felt fast from my first impressions and the aspect ratio is 16:10 (thanks for the correction), which you still can't get on windows pc other than the surface book.
It's not because the big 3 (Apple, Google and Microsoft) do not want you to encrypt your email, so they can use it for data mining. If 70% of their gmail users used encryption, I'm sure they'd be turning the service subscription only or (as it's customary for G) shut it down.
So, if you need encryption you have use an external "add-on".
The problem of secure email is solved, it's just not pushed as a standard because:
a) Users don't understand they're being tracked (or don't care)
b) It's not promoted (actually it's being demoted) by industry leaders
The fact that H. Clinton and her equip didn't use GPG is appalling, doesn't make sense. This group of people had big stakes on the privacy of their communications, they went as far as setting up a mail server and forgot to apply encryption? I just don't get it.
Because we better understand the threat vectors that are imposed on the company from sloppy IT practices and as such are more willing to take security measures to prevent these things from happening.
We are also, at the same time, too stupid to realize that not everyone want's 5 applications just to encrypt their mail with a PGP key. When we make it so that by logging into a service with a password your browser can derive a private key and public key and use that to sign and send email we will have larger adoption. This will only be the case if it automatic.
Sure it's less secure but less secure is better then unused.
Perhaps using a community messaging tool with built-in end-to-end Signal encryption will be the way to secure lines of communication in the near future.
There's no real reason this is not possible, and the benefits are huge. The ease of use of end-to-end encryption in WhatsApp etc shows there's nothing technically impossible about this, and fundamentally, the gmail app is no different to WhatsApp when it comes to sending mail from one gmail account to another.
There is a clear way forward. Add transparency to email clients. For example, i have two emails in my in box right now. Which one was sent in the clear? Which via ssl? I don't know. If i knew, then i might be annoyed by the one that was sent in the clear. And if i'm annoyed i might do something about it.
Get compile times down to more reasonable levels. Use the shorter breaks for checking on things in your issue tracker to start on whatever is next in your queue.
You can also listen to Lord of the Rings on audiobook to occupy your mind while you wait. You're probably familiar with the storyline, so you don't have to worry about missing something important when you aren't paying attention to it. Trying to make that time productive is going to lead you to feel frazzled as you keep context-switching.
It's a good time for a trip to the restroom or to refresh your beverage, but you can't do that every 5 min.
I'll often deal with email (our issue tracker sends email for comments, so there's usually something to deal with there) or catch up on slack.
There's always something that needs code review.
I'll check some monitoring dashboards for servers I'm responsible for.
And I have project management responsibilities along with the code-related ones, so I can take care of some of that.
Of course, all of those other than the first require significant context switching, but so does reading HN.
To be candid, I have no idea what it feels like to be blind and have never paid much attention to accessibility other than reading a tutorial or two and making sure I use alt tags on my images. The main reason for that is that I'm lazy and based on my experience, most developers are in the same boat.
Now, if there was a service which would spin up a remote VM session inside my browser (a bit like BrowserStack or SauceLabs do) with all screen reader software setup and no screen (only audio), it'd make it a lot easier for me to experience my software as a blind user. There should probably also be a walkthrough to help new users use the screen reader and help them get started. If you're lucky, you could turn this into a business and it could indirectly help you achieve your goal of making better software for the blind by exposing more of us to your issues.
Anyways, I know you probably have more pressing issues to solve and I hope I didn't come across as arrogant, just throwing the idea out there.
First off, you're 100% correct when you talk about how devtools are inaccessible. This problem is an historic one, stretching back as far as early versions of Visual Studio, or other early IDEs on Windows. Basically, the people who build the tools make the tools for themselves, and not being blind, make inaccessible by default tooling.
I do most of my work on Windows, using the NVDA screen reader, and consequently I have the ability to write or use add-ons for my screen reader to help with a variety of tasks. This being said, this always means more work for equal access, if access is even possible.
I'm interested in any sort of collaborative effort you might propose. Targeting accessibility issues in common devtools does seem to me like a reasonable place to start attacking this problem.I had read a few months ago that Marco Zehe, a blind developer at Mozilla, was pushing some work forward for the Firefox devtools, but haven't heard much about that recently, and I think they might be distracted trying to get a11y and e10s working together.
Basically, I'm interested in helping in any way you might suggest, and from the thread here it looks like there are some enthusiastic people at least willing to listen.My email is in my profile, let's make something awesome.
If you have an interest in Braille and have software development skills there might be something to do there. The UI program that drives our prototypes is open source and available on GitHub. https://github.com/Bristol-Braille/canute-ui
We have plans to open source the hardware as well.
If you want to add support at a lower level, our current USB protocol is outlined in this repository. It is a a dev-kit I knocked together to allow some Google engineers to write drivers for BRLTTY (and thus for ChromeOS).https://github.com/Bristol-Braille/canute-dev-kit
I would be very interested to learn how visually impaired developers such as yourself and others got started, and for any suggestions for how I can make my student's experience more positive.
For any developer, it's important to practice your craft, and when looking for a job, it's valuable to have a portfolio of work you've contributed to. So you can get multiple benefit by helping create a tool which will help you be more productive, and also show your skill.
Clearly, this project should be something that you're passionate about, but one project I've had on my when-I-have-time list is below - I would be happy to work with others who are interested (@blinddev @ctoth @jareds).
After your text editor / IDE, one of the next most important tools is a tool for tracking bugs/tasks. Unfortunately, many of the common ones, like VSTS, Jira, and Trello, are either not accessible, or at least not productively usable with a screen reader.
Over my career I've developed my own scripts for working with such systems, but it would be good to have something that others can also benefit from. I should probably put my initial bits on Github, but time is currently consumed by other projects. Email me if this interests you. Also happy to mentor on general career challenges around being a blind software engineer.
The world can certainly use more open source accessibility standards, protocols and tools.
For example, could you read this article and then give an overview of the main issues of web site performance? Could you then come up with one recommendation for a performance improvement in a code base you're familiar with? Could you justify in practical terms why your recommendation was the best bang for the buck, vs. other other possible improvements?https://medium.baqend.com/building-a-shop-with-sub-second-pa...
Now, how do you judge yourself?
1). Have the conversation with a dev whose skills and opinion you trust.
2). Record your answers on audio, and ask someone on HN to give you fair and constructive feedback. Many here would be glad to do this (feel free to ping me as well).
As a partially sighted developer, I generally use a screen reader for web browsing and email, but read the screen visually for my actual programming work. So I don't have significant first-hand experience with the accessibility (or lack thereof) of development tools. But some of my totally blind programmer friends have expressed some frustration with the accessibility of some tools, especially web applications. They generally use Windows with NVDA (http://www.nvaccess.org/). At least with NVDA, you can write add-ons (in Python) to help with specific applications and tasks.
All of the complaining I do about JIRA aside, I do find it to be a reasonably usable tool for what I need (page load times annoy me far more than accessibility issues). There are some tasks that I cannot complete (reordering backlog items), but I collaborate with team members, which can help us all to have better context about the rationale for changes.
Gitlab I find quite poorly accessible, but thankfully it is just a UI on top of an otherwise excellent tool (git). I find that the same trick that works with evaluating GitHub PRs works with Gitlab MRs. If you putt .diff after the URL to a PR or MR, you can see the raw output of the diff of the branches being compared.
Debuggers are definitely my biggest current pain point. I tend to use MacGDBp for PHP. This is quite reasonably accessible. It allows me to step through code, to see the value of all variables, and to understand the file / line number being executed. It isn't possible to see the exact line of code, so I need to have my code editor open and to track along.
I'd be happy to learn more about any projects you take on to improve web application development tools and practices for persons with disabilities. Feel free to reach out on LinkedIn if you would like to talk.
I am not blind, but I designed it to operate without looking at screen.If the app will take off, I'm considering into forking/pivoting into RSS reader that also is not using screen. App is already accepted in the app store, I'm sorting out launch details.
Please accept my deepest apologies for the shitty job we (the developers ) are doing at providing interfaces for vision impaired.
Probably when we're all old, we'll have vision problems of our own :).
I'm mostly responding to encourage you to keep at it, and if you haven't tried Mac OS, maybe give it a whirl. Apple is pretty good about accessibility and their accessibility team is very good at accepting and acting upon feedback.
My sight issues are not comparable to being blind, but as an example, I've asked Pandora for simple accessibility improvements for years and they never take action. Have even offered to write (less than a page) the code for them.
Would they (and software tool vendors) feel the same way if this were highlighted on a high traffic web page?
A super-rudimentary basic version will be something I finish when I've the time in the coming months. I was hoping to get some interested from the blind community and get ideas for further OSS work involving that general space (editors).
I would be happy to help.
Another interesting idea: try using braille screen for ourselves, so we as dev's will be able to work at complete darkness without any light :)
Send me an email; my address is in my profile.
I'm asking because though I'd love to help I know I won't be able to commit to it full-time. So it would be great to be able to follow up and get an idea of where the project is going, what areas it is tackling, etc.
Also, maybe a "Show HN" could help spreading to a wider audience whatever you set up.
I'm a seeing student with an upcoming six week block of time to do a out of school project. I have previous experience developing accessable software and would love to work with you. If you're interested, shoot me an email at firstname.lastname@example.org
You will need to have the package texlive-fonts-extra installed.
You could want also to contact with the maintainers of brltty, cl-brlapi, ebook-speaker or brailleutils
Do let me know how to contact you.
 http://github.com/jscheid/kite http://emacspeak.sourceforge.net/
I'm not sure that using tools that try to provide a good visual experience is the right approach. Have you tried writing scrapers that provide an optimized textual representation?
See our first demo: https://blockly-demo.appspot.com/static/demos/accessible/ind...
Right now, it is effectively a different renderer for the same abstract syntax tree. We'd love to see people evaluate the direction we are currently going, and possibly apply the same accessible navigation to our existing render.
In terms of dev tools, Blockly blocks are usually constructed using Blockly (https://blockly-demo.appspot.com/static/demos/blockfactory/i...). That said, no one has considered what it would take to make our dev tools blind accessible. The fundamentals are there.
Granted, Blockly programming is far from being as powerful as other languages. It is aimed at novice programmers, whether for casual use or to teach the fundamentals of computational thinking. You can write an app in Blockly (http://appinventor.mit.edu/).
If anyone is interested, reach out to us: https://groups.google.com/forum/#!forum/blockly
If you do contact him please blame me so he can shout at me, not you, if I made the wrong guess here.
I would love to learn more about how you would like development tools to support you in your work.
I know as an industry we have a long way to go, and I would love to work with you to get us there.
My email is in my profile, and I will also reach out to Talitha. Hoping we get a chance to chat.
There is also a fair amount of research out there on the topic (see Richard Ladner at UW).
Feel free to send me an email if you get anything going!
You might want to read this: TOOLS of Blind Programmer https://www.parhamdoustdar.com/2016/04/03/tools-of-blind-pro...
Hope this can help.
Clients want sites that implement current SEO best practices. What sort of best practices are those? A Yoast SEO plugin, maybe. Developers often mention the URL structure of the site itself, say it's "clean." This might be appreciated by future admins of the site, but it's unrelated to the goal of making pages that can be scraped.
It surprises me developers and SEOs overlook the difficulty of scraping the web. Keyword density does very little to help a page that cannot easily be serialized to a database. It's true that machines have come a long way. Google sees text loaded into the DOM dynamically, for example. But its algorithms remain deeply skeptical of ( or maybe just confused by ) pages I've made that make a lot of hot changes to the DOM.
And why wouldn't it be? I ask myself how would I cope with a succession of before and after states, identify conflicts, and merge all those objects into a cached image. Badly, sure. At this point, summarizing what the page "says" is no longer a deterministic function of the static page. Perhaps machine learning algorithms of the future will more and more resemble riveting court dramas where various mappings are proposed, compared to various procedural precedents, and rejected until a verdict is reached.
I wasn't very good at SEO. I found web scrapers completely fascinating, I spent way more time reading white papers on Google Research and trying to build a homemade facsimile of Google. Come to think of it, I did very little actual work. But I took a lot of useful lessons that have served me well as a developer.
I realized, for example, how many great websites there are that are utterly inaccessible to the visually impaired. With very few exceptions, these sites inhabit this sort of "gray web," unobservable to the vast majority of the world's eyeballs. The difficulty of crawling the web isn't simply related to the difficulty of summarizing a rich, interactive, content experience. They are instances of the same problem. If I really wanted to know how my site's SEO stacks up against the competition, I would not hire an SEO to tell me, I would hire a blind person.
Puns aside, Who on earth would make a blind person work on UI? I think it's better that you parted with them, even tho I'm sorry you have trouble finding a good job.
Best of luck.
FYI, I sent courtesy invitations to nine people who said in this discussion "shoot me an email." One email address provided here was invalid. One or two other people who said "email in profile" did not have an email in their profile. If you want an invitation, contact me (talithamichele at gmail etc).
Firstly, just offhand, the following stacks should be fully accessible with current tools: Node.js, Rust, Python, truly cross-platform C++, Java, Scala, Ruby, PHP, Haskell, and Erlang. If you use any of these, you can work completely from a terminal, access servers via SSH through Cygwin or Bash for Windows, and do editing via an SFTP client (WinSCP works reasonably, at least with NVDA). Notepad++ also makes a perfectly adequate editor, again with NVDA; I'm not sure about jaws if you're using that.
GitHub has a command line tool called hub that can be used to do some things, and is otherwise pretty accessible. Not perfect, but certainly usable enough that NVDA (one of the most popular screen readers) uses it now. Many other project management systems have command line tools as well. If you write alternatives to project management tools, you will have to convince your employer to use them. Replacing these makes you less employable. You need to work to make them accessible, perhaps by getting a job on an accessibility team.
The stacks you are locked out of--primarily anything Microsoft and anything iOS--can only be fixed with collaboration from the companies backing them. Writing a wrapper or alternative to msbuild that can let you do a UWP app without using the GUI is not feasible. I have looked into this. Doing this for Xcode is even worse, because Xcode is a complicated monster that doesn't bother to document anything--Microsoft doesn't document much, but at least gives you some.
I imagine this is not what you want to hear, but separating all the blind people into the corner and requiring custom tools for everything will just put us all out of work. if you're successful, none of the mainstream stuff that cares even a little right now will continue to do so, and you'll end up working on blind-person-only teams at blind-person-only companies.
0: My most notable Rust PR is this monster: https://github.com/rust-lang/rust/pull/361511: https://github.com/camlorn/libaudioverse
But if you're adding a keyboard and able to switch between apps easily like we do on MacOS [haven't used iPad Pro] then probably that difference should be further slim. Sounds interesting as I think of it, you should definitely try & tretch/test the limits. Good luck :)
I didn't realize this was just a discussion thread here, and I opened two tabs like I usually do - one for the main link and one for the HN thread. In this case I got two tabs with the same HN thread. :)
1) You work on an open source project and an altruistic company hires you to keep working on it. This is ideal, and I've only ever seen it once (Sendmail hired a couple of core contributors to keep making Sendmail awesome back in the 90s).
2) You work on an open source project, people see the work because they use the project, and then offer you a job to keep working on the project, but slowly over time you are working less on things that are great for the community and more on things that are great for your company. I've seen this a lot.
3) You get hired by a company that uses a big project, and they ask you to start making modifications that are useful for the company. It turns out what you did was useful for everyone so you contribute it back. Sometimes it turns out to be a huge win and so you keep working on it. I saw this with Cassandra and some of the folks at Netflix.
4) You create a cool project and your company lets you open source it. It becomes well known and then other companies want to hire you for either 1, 2 or 3. I saw this a couple times were people left Netflix to go to Facebook or Google to continue work on an OSS project.
If you work on Chromium or Firefox, you'll pretty much be limited to Google or the Mozilla foundation (with some exceptions). So if you want to do it to learn some great code but don't have a particular project that you love, I'd suggest one of the more infrastructure projects that are widely deployed if you want to increase potential job prospects.
In summary: There are lots of ways to get paid to write OSS, but you may not like them all.
My major source of income is my "Varnish Moral License" (see: http://phk.freebsd.dk/VML/index.html)
It is not particularly easy to shake money loose, but I'm making a living and I'm trying to explain to the world that free software is not the same as gratis software.
(See for instance: http://queue.acm.org/detail.cfm?id=2636165)
As others have pointed out, the browsers are all backed by actual organizations with employees, so that will probably be a tough row to hoe, unless the end goal is to get employed by one of them.
And to answer the inevitable question: many of my paid features are also available as 3rd party OSS plugins. Many companies prefer to pay for the commercial version so they know the features will all work well together and be supported years from now.
Another person worth looking at would be Eric Holscher, who's Twitter feed frequently has interesting insights into running an open source project as your full-time job.
The best bet if you want to do open source full-time would be to work at a company like GitLab or Sentry, but that does restrict the exact kinds of open source work you can do (at least during working hours).
: https://github.com/nayafia/lemonade-stand: http://www.fordfoundation.org/library/reports-and-studies/ro...: https://changelog.com/rfc: https://twitter.com/ericholscher/status/752572876138565632: https://about.gitlab.com/: https://sentry.io/
Once payroll rolls out contributors set their own compensation.
Some more information on that can be found here: https://gratipay.com/about/features/payroll
Previously Gratipay was Gittip, and worked much like Patreon - essentially a donation or ~tip~ system.
There's still some work to be done, but I've been following this project for awhile. I've been working full time now on other stuff, but I keep up with their updates, and Chad (founder) is a great dude.
Incidentally, previous experience with the specific codebase isn't necessarily a requirement to get a job working on a project: if you have general experience in the field and can work with an open source community then these both transfer over (this is how I got into working on QEMU). Learning a new codebase is something that you typically have to do when you start a new job in the closed source world, after all...
I'm a software engineer at Google, where I've contributed to Google Servlet Engine, Omaha (https://github.com/google/omaha), Firefox, Chromium, and Android, among other open-source projects.
Some of these are closed-source projects that were later open-sourced, some are developed in the open, and some are run as a hybrid between the two. I also develop random crap on the weekends, and Google gives us wide latitude to open-source that work if we want.
I recognize you're asking whether one can start with open-source contributions and eventually receive compensation for it. I'm answering that in my case I am compensated for a job that happens to involve lots of open-source contributions, which is the same end result but starting from a different place.
So I'm here to tell that friends or family aren't always the worst possible clients. If you both know what you're talking about, and are well organized, and define precisely what's the price for each task, it can be a great experience.
today the project has 900 stars on Github and a lengthy Smashing Magazine page :)
More info here:https://www.smashingmagazine.com/2016/07/how-i-ended-up-with...
We pay our developers to help us build it and we are currently hiring an Android dev. http://ie.indeed.com/job/android-developer-passion-human-rig...
Code is here: https://github.com/securityfirst
Note that this doesn't have to involve doing a PhD or actually being an academic - it's more a providing the tools that enable academics to do successful research kind of thing.
- I grew up in a family without a lot of money, by using open-source software growing up I got to learn a lot of different aspects of digital production, sofware development, and try software I never would have had the opportunity to try if it hadn't been open source. This was incredibly formative in shaping my skill set today, so I have a lot of past open-source contributers to thank for where I find myself today
- I believe businesses have a responsibility to the community in which they operate and where their employees live. This is corporate stewardship, for a big business maaybe they invest in a local school, or sponsor kids sports teams or summer camp. I'm a freelancer, so I wont be sponsoring any sports teams, but I feel its important for my 1-man business to give back in a 1-man-sized way!
So with those two things in mind, a desire to give back to open source, and a desire to help the community I come from - I have tried to find challenging new work that pushes the limits of current technology. I stretches me as a learner & worker, it provides a solution for a problem that meets the clients needs, and if I can find a way to give the solution I came up with back to the community, then others can save time and money by using my work as a springboard for their own solutions.
I write and release lots of use cases and examples demonstrating techniques and solutions, and pour a lot of time, and even some of my own money into getting them out there!
If your aim was to help a project like the Firefox project, and you wanted to be paid for your time - I would try to find a client who has an ee case not currently supported by Firefox, having them pay you to solve their problem, and also arrange that your solution can be sent back to Firefox and included in their codebase. Its a win/win/win for you, the client, and Firefox, plus a bonus win for all Firefox users at the same time!
Learn/money idea to what you want is to get a job where open source is welcome, cherished and used. Internships are good to try it out. HIIT in Finland was such place and I interned there, and the result is here:https://github.com/wkoszek/freebsd_netfpga So I've got $$$ for stay + food + cinema for hacking project which I knew we'd publish and I learned a bunch.
If you're not for a rich country, Google Code In and Google Summer of Code be an option. You get a $5000 stipend for spending your summer at home hacking code, you get a decent mentor from a project you're interested in and you get experience.
Another model is to reach out to projects which are backed by a legal body. For example the FreeBSD Foundation helps and support the FreeBSD Project, and they have sponsored projects. If you're good in FreeBSD and have an idea, I feel there'd be some $$$ if you can deliver something useful. FreeBSD has feature idea pages and if you see a fit, you could just ping people and start collaborating.
Last, and I think the hardest, is to start hacking good code in a product you see is (1) open-source (2) backed by a company. I don't know how many hiring managers are techies merging pull requests etc., but even through individual engineers you can get a reference. After 10th pull request accepted by a guy who reviewed your stuff and with whom you've worked, I feel like it's easier to shoot "Are you hiring? I NEED THE MONEYZ!" email.
And of course, if you're starting a new project, there's the Kickstarter model - followed by, for eg., Neovim, Chocolatey, etc.
 https://www.bountysource.com/ http://alternativeto.net/software/bountysource/
I work in Open Source and there are plenty of companies that build their business around a product and hire at market rates, normally they have a SaaS model of operation, but you'll have to set your sights a little lower than Chrome or Firefox. These companies include Ghost, Mongo, Elastic, Basho, Cockroach Labs, Automattic (Wordpress), Silverstripe, and countless more.
Another way to do it is to do postgraduate work at a university and get a grant, I know people who work on the Rust compiler in this capacity.
I'd highly recommend it, although I believe enrollment in a university is required for eligibility.
There are usually 3 kinds of paid contributors we see:1. Companies scratching their own itch while we maintain it
2. People I hire to work on the project
3. Phd students technically on a stipend doing their research with us (we do AI)
Another possibility is a 3rd party company paying someone to add a pull request to an open source project whether that be us or others.
If I need something fixed or added to a FOSS project for $WORK, that's work related and it's perfectly reasonable to do so.
Now getting someone else to pay you is a much bigger stretch. Outside of a couple people who work for really big companies that market commercial versions (or support packages) for FOSS projects, I don't know of anyone that gets paid to work on FOSS.
I had met some people from the company a couple of times and wrote something they wanted adapted to work with their products but didn't want to invest in it.
A few thousand to get me to do something I was going to do anyway at some point was a good way for them to get something that they wouldn't monetise directly.
Not sure how to get a gig like that though :)
I don't know a lot about the frontend OSS world, but I know that if you pick a project that has a lot of money being thrown around (in large deployments, for example) then you'll find that it's easier to get some of it to land in your pocket. Niche projects are difficult to get paid for, but can be good places to learn; smaller projects may be happy to have some help and will lend more guidance when you ask questions. But, then again, some big projects have people specifically tasked with bringing new developers up to speed and "community management", so that may even out that difference.
It will never hurt you to have OSS contributions on your resume. It's gotten me jobs, and has allowed me to round up good paying contract work when I've needed it (even in unrelated fields; I've recently done some Ruby work, even though I've never had a real project in Ruby). And, as someone who has hired people, I can say I've only ever hired people who had OSS work I could see. Sometimes unrelated to what I was hiring for, sometimes they were already working on what I was hiring for and I just wanted them to be able to spend more time on it and get them on board with the company road map.
All that said, it's not the easiest way to make a living in software. Getting a real job is probably the easiest way, and if you're lucky you'll get to work on OSS stuff to one degree or another. I've worked on tons of stuff that I never got paid for, and don't expect to ever get paid for. And, if you aren't really directing your efforts toward making something pay, you're unlikely to find that it'll pay.
OSS contribution does not, in the general case, lead to getting paid. But, it can lead there if you want it to.
Basically the idea is that the code is open and free, but if someone uses it a lot to make money they pay you a licensing fee.
Can't get much cheaper or more effective than having the USPTO rule your patent as valid and distinct; even a lengthy DIY patent process will run you less than a couple hours of a middling patent attorney's time.
Odds are your business will fail or be acquired by the time the patent issues or even gets looked at (I'm still litigating a patent application I initially filed in 2010). Your goal is to succeed or fail based on the quality of your business model and only use the patent process as needed to entice investors and scare away trolls.
Patent pending is not as good as issued, but darn close for a number of investors.
The problem with asking this question here is two-fold. First, you are potentially admitting that you think you may be violating that patent. Just because a site is not working, does not mean they are not a patent troll.
More importantly, you will get a mix of answers, if any. Patent law is complicated and, in most cases, not a simple yes you are violating or no you are not violating answer. The responses you get by asking that question in a public forum will fall along that line. Some people may think you are and others will not. In the end, you still don't have the answer to your question and are most likely more confused than when you started :)
Finally, just looking at your site, not sure if you are aware but I know of several patents that are being utilized for similar technology. Check out a site: http://zugara.com/virtual-dressing-room-technology and on their site they list the patents they are using.
This is the exact reason why we built Unpatent (https://unpatent.co) so feel free to reach me at luis@(our domain name) and we'll help you out!
That said, I hear you. I wanted a 32gb model with crazy good battery life also, but to be honest, Windows laptops are kind of all shit right now. I'm in the exact same boat as you. I hate the new MBPs and need a new laptop soon, BUT I'm still landing on the old style MBP as the way forward every time I look through the available options.
Probably not much help, but that's my 2 cents.
e: that said I am going to keep refreshing this thread and hope someone mentions something I haven't looked at yet.
But it does learn from its mistake, the new Surface line-up is epic.http://mashable.com/2016/10/27/microsoft-better-apple
I have been using a Windows laptop for over 5 years (Yeah a Lenovo!) and have went thru the whole upgrade from Windows 7 --> Windows 10.1 Anniversary update (for free), and to much shame of mine, my b!@#ch of a laptop still doesn't cry considering a boot up time of 6 seconds!
Yet I needed a dedicated Unix environment and although Bash is available natively now on Windows, it's not going to be stable soon enough for me (6 months from now maybe, Creators Update is coming in Jan' 2017). So, a week ago I did buy the MBP retina 13" Early 2015, and trust me I am not disappointed, after last night's #AppleEvent.
I might be biased but coming down to your query:> Are Lenovos worth considering post-superfish-gate?
"based on my personal experience".
If you want to spend a similar amount of money, get the Asus UX390UA (Zenbook 3).1) It's lighter2) It's got better components in every single aspect -> CPU, GPU, SSD size, Screen, keyboard, etc., etc....3) It's actually cheaperSTILL
If you want to spend less, but now around the same performance of a MBP, maybe get the Asus UX330. It's basically a toned-down UX390, but still awesome.
If you want a cheaper STILL, consider a Clevo reseller like PCSpecialist (UK), Scan (Everywhere?), Sager (US), XMG (Europe). They are the ultimate in performance per cost, it's just that they tend to not be the most asthetically pleasing.
Dell XPS 13 is also a very good alternative, I've heard.
I plan to get another MBair or maybe the new MBpro without the touch bar. I might go for the touch bar but right now it just doesn't interest me but I'll go in and try one out, read reviews and see how it's integrated with software I use.
I would still stick with a macbook.
1) Powerhouse specs (core i7, 16gb ram, 512gb SSD, nvidia GeForce) for running pretty much anything
2) Convertable to tablet for casual browsing, watching videos and drawing
3) Super accurate pen and touch support, pen acts like a mouse so can be used for OS level interactions not just specific apps, even hover works
4) Pen mounts to screen magnetically
5) Can be used like a traditional laptop on your lap
6) Beautiful 3000x2000 pixel display, higher DPI than retina with a 3:2 aspect ratio
7) Windows 10 with all the patches is actually a decent OS and supports all form factors, touch etc.
It's really nice to be able to do creative work, everyday work and gaming all on the same system. Currently playing Overwatch with no issues!
Do you really need to be coding on the bus/train/plane or in hotels? When you go to a meeting, do you really need to bring your entire development setup with you?
When I go into a client's office for a meeting I usually only need to take notes and do presentations. So I get a cheap $500 laptop for that. If I need anything at all from my home workstation, I just remote into it. Actually, I did this even before I was working for myself - I'd just remote back into my workstation at my desk.
Is it just that you don't want to deal with 2 machines? Are you just doing it because that's what everybody else is doing?
And they have an entire article devoted to the topic of laptops. 
Run Linux beautifully, if you care about that.
I have heavily relied on Microsoft Remote desktop in past and my experience has been smoother for task like running and computing in MatLab or Mathematica.
I have also been thinking of getting Razor blade pro laptop if this setup does not work out. They have 2 TB PCie SSD with RAID 0. That's insane in less than one inch thick laptop.
- Thinkpad x250 (x260 has PWM issues)
- 4th Gen Thinkpad x1 Carbon (FHD model to avoid screen lottery)
- Thinkpad x1 Carbon Yoga (OLED)
- Refurbished 2015 Macbook Pro
A fully upgraded MacBook Air is still the best. (i7, 500GB HD, 16GB RAM) I got several of them.
Lenovo is too heavy to carry around. Even a MBP is too heavy and bulky for me.The Elitebook has no 500GB HD available and also only 16GB RAM.
on a serious note, look at Aorus X5, I like the RGB keyboard. you can get it to colour the keys based on context. could be a nice alternative to the overpriced touchscreen of the new macbooks.
They also have a 17" and a 12.5" laptop, but you're probably looking for something in between 13 and 15.
I'm in the same market. I have a late 2013 Macbook Pro and there is ZERO chance I'm buying a modern 15" MBP. The Touch Bar is offensive to the point that I'll put up with Windows instead.
- Asus ZenBook Pro UX501VW (15.6")
- MacBook Pro 2016 (15.6")
- Dell XPS (13" or 15")
- Lenovo X1 Carbon
If you don't like the MacBook Pro (or think it's too expensive), then I'd go with the ZenBook Pro.
Comes pre-installed with either Windows or Ubuntu 14.04 LTS. Also comes with Thunderbolt over USB type-c so you can charge and hook up your peripherals over 1 cable.
Not quite as thin and light as a Macbook Pro, but not far off: 17.5mm and 4 lbs.
The build quality definitely isn't as good as Apples. I had to return my first T460s due to severe light-bleed issues. The new one is fine, though the TrackPoint isn't as good as it was in previous generations. The TrackPad also is not as good as Apples, though I try to keep a keyboard-only workflow so it's not that much of an issue (till it is)
(I got a lemur)
The actual build quality isn't great, but it's functional with no frills which is exactly what I wanted.
Edit: removed "inb4 downvotes".
Early this year Apple acquired Turi for $200 million. It was founded by Carlos Guestrin, one of the professors who is teaching the course.
We (Class Central) are also working on a six part Wirecutter style guide to learning Data Science online. Here is part 1:https://www.class-central.com/report/best-programming-course...
Feedback would be appreciated (on the format as well as content)!
If you want to just try them out, I'd honestly recommend just going through the scikit-learn documentation. Almost all of the algorithms provide an example, and the API is pretty consistent across different ML algorithms, to the extent that it can be.
People learn differently, some people prefer to get into the math right away, others will never be interested in it. I'm interested, but I tend to be more motivated when I've used the algorithms, start to learn about how and why they perform well or poorly under various circumstances, and then dig into the mathematics specifically to find out why.
Also, I'm not going to be creating new ML algorithms. So, you know, that also influences my level of interest. I do care about the mathematics involved, because I do want to genuinely understand why some outputs are available for random forests but not naive bases or logistic regression, why performance and/or accuracy is great in some circumstances and not others, and I don't want to have to rely on too much hand waving. But if you want to actually develop and research novel ML algorithms, you'd need to get considerably deeper into the math.
Ask HN: How to get started with machine learning?
For keeping up with the latest research, once you know what you are doing, reading papers on Arxiv daily/weekly is a great way to keep up, nearly everything gets published there
It is a remarkably high signal to noise community.
Excellent book for starting with NN and DL.
 Cash portion of compensation is significantly better
 Diversification of experience improves. You have big enterprise, start-up and now would add trading/finance to the mix
 If you keep a tight rein on lifestyle inflation you could easily save enough money to become your own angel investor in 4 to 6 years from now if you really find you prefer the start-up environment
 If you stay the ego-crushing aspects will continue to weigh heavily on you and create daily stress.
If you were given the choice, which route would you take?
When you're done there, go to some other industry. Medical devices, alternative energy, aerospace, porn. Live in different regions, different countries.
That's the beauty of software. If you're open to it, you can learn a lot about different parts of the economy.
Or did you specialize in whatever your startup does when you were in school?
Hedge fund pros and cons:* higher pay* more volatile pay* what is your long-term career path at the hedge fund?
Startup pros and cons:* probably a nicer work environment than a hedge fund* you feel disenfranchised
The simpler argument would be to simply take the job that pays the most. I think there are very few exceptions to that rule.
I've been using a Retina MacBook Pro 13" (early 15) and 15" (mid 15) and just picked up the xps 13 9350 with iris pro.
There are definitely some quality control issues but once you get a working model with no faults (I had one that wouldn't reboot and had terrible coil whine, one that had loose trackpad and yellow tint on screen but this could also be because of Amazon's shitty packaging where the laptop was in a box with only some brown paper crumpled in) - atleast they took them back no questions asked. I'm amazed how far windows laptops have come along.
The only real downsides are that it power throttles (and thermal too, but I placed my own aftermarket thermal paste and it doesn't cross 66 C on full load now) due to the iris GPU itself consuming 18W at it's rated turbo boost with the SoC's TDP being 15W (long turbo) and 25W (short turbo). Perhaps go with the i5 model that has the HD 520 or the new 9360 that has kabylake with better thermal and power consumption (HD 620 is roughly similar to HD 540 but won't throttle). You can also use Intel's XTU to undervolt and better battery life and throttling if you're going to use windows.
Linux runs flawlessly, infact so does OS X if you can replace the wifi card. AMA
So for ~$1900 I have something that blows the MacBook Pro out of the water.
- 4k touchscreen
- i7 Skylake processor w/ identical stats to that on the $2400 15" macbook pro
- 16 GB RAM
- 128 GB SSD + 1 TB HDD (I replaced the HDD with a 500 GB SSD from Amazon)
- NVIDIA GTX 960m w/ 4 GB GDDR5 RAM
It's sturdily made, I take it everywhere. The only thing I miss from my mac is the trackpad. You can't beat mac trackpads. However, the trackpad on the Inspiron is great, much better than many of the others I've tried. When you take into account it has better graphics acceleration than the $2800 macbook pro, you find that dollar for dollar, it's one of the best value laptops out there. (Seriously, compare it to even Dell's XPS 15, you'd have to pay ~$1650 for an XPS 15 to get comparable specs to the $1300 Inspiron 7559. The Inspiron even has double the graphics card RAM of the $2550 XPS 15!)
* My XPS has a really awful touchpad. When I first got it, it was definitely my main reservation. I tried a 2014 model and noted that it wasn't much improved.
* The battery life is much, much worse on the XPS, which is probably the main reason why I find myself reaching for the mac. I've kept Ubuntu 12.04 on it, so Linux power management has likely gotten better but there's still no comparison. * other than that, I've loved my XPS. It's super light, has a brilliant keyboard, excellent specs and still works well after three years.
Here are my pros and cons:
1. The hardware is great; the developer edition favors more Linux-compatible hardware (obviously), and for us, it didn't require very much setup. Usually the default configuration will be enough. The touchpad, like the MacBook, has a glass surface and feels excellent.
2. Like the MacBook, it's very light. The screen looks great, and honestly on Linux I prefer 1080p.
3. Dell has a very reasonable warranty, and is very quick to respond. Example: You can install whatever Linux distribution you like, replace the SSD (so long as you don't ruin anything while you're there, of course).
1. It's fragile. Unlike the Macbook, you have to be at least (more) careful with this thing. We ended up breaking the screen without much effort; I wager it was the fact that it was in a backpack that got dropped somewhat aggressively.
That being said, we also bought the $60 accident protection, and Dell sent out a technician from a local repair shop to fix it for us within that week. If the technician can't fix it, they will over-night you a shipping box and a FedEx label to send your laptop back in.
Just be careful with it; treat it like the $1000+ machine that it is.
2. No replacing the RAM. It's soldered onto the board. That's not a problem for me because I barely push ~4GB.
Conclusion: I use a MacBook now; my XPS 13 is actually coming in tomorrow and I'm very excited. I think it's a great machine and a great MacBook replacement, and has excellent Linux compatibility. Dell's customer support is great, just be careful with it; it's not an aluminum body or several layers of glass in front of the screen. Make sure to buy the one with the right amount of RAM so you don't regret it later. If you're worried about storage, there's a $150 500GB M.2 SSD on Amazon, buy the lowest storage version and upgrade it. Get the protection plan. It's cheap compared to the cost of buying a new device.
Initially I though I would never use the touch-screen, but it is actually quite useful when reading things (scrolling) or quickly clicking basic things when not really sitting behind the keyboard on a desk. Same for the light in the keyboard, very useful when working at night and on airplanes etc. The screen in general is really really good, some colleagues have the 1920x1080 screen, I would pick the 3200x1800 screen again next time since it's much nicer to read from and allows you to use smaller fonts (= more code on one screen)
Linux support is generally much better than other relatively new notebooks I've had, but still sometimes things break. The Developer Edition is released a bit later than the Windows models, probably to stabilize Linux support. I've only used it with Ubuntu, but I see others use several other distros which seems to work without much issues.
Trackpad much worse than on a Mac
Bad fan control means it was sometimes noisy in near-idle contitions (though in idle it was very silent)
there were some flicker issues with the GPU (might have been resolved though)
one key was bouncy, meaning it sometimes triggered twice
it woke up from sleep randomly, sometimes while in my bag, often completely emptying the battery
In the beginning it also crashed very often, however this was resolved with an update.
So all in all the quality wasn't on the level of a Mac.
And I wouldn't even start speaking about the OS.If you're used to macOS, it's still such a day and night difference.
Connecting a normal low dpi display to the 9550 with HIDPI display lead to so many annoyances with Windows and all the programs that won't support this for the years to come. I'd barely consider it useful. Although the display itself was quite nice.
If you don't mind something heavy, check out the new Thinkpad P50 or P70. They have actual desktop-level performance, terrific screens (matte, color corrected 4k IPS!) and the new NVMe SSDs. I do most of my daily development on a P70, and increasingly just lug it along when I travel even though travel was the reason I bought the XPS 13.
Also, do realize that the UltraSharp model will have a significant impact on battery life. The comments I've looked at for the XPS 15 9550 (4K display) say that the battery life is basically halved, but it's supposedly still around 4.5 hours of battery life.
If you prefer the 15-inch, you might want to wait for a while - they still only feature Skylake CPUs and I think an upgrade is imminent (given the recent XPS 13 upgrade and all.)
I don't have any personal experience with the machines, but I'm planning to buy the XPS 15 once it gets an upgrade.
Why on earth there's no startup which just puts together linux laptops? I'm sure you can grab Chinese/Taiwanese/Korean whitelabelish product customised with linux friendly peripherals or just put the box together yourself with engraved penguins here and there. Half of devs would love it, another half would hate it - but that should be enough to survive, no?
Out of curiosity, what has you disappointed with Apple's new laptops?
Otherwise I think it a great machine.
I liked it, but I didn't travel with it so not sure how carry-able it is. Current shop is Mac oriented but I would have gotten another one if it had been up to me.
I suppose that the thing will only improve with future Ubuntu Hardware Enablement Stacks that include new kernels and so...
Just be careful with the Dell Thunderbold 3 TB15 dock (not sold any more I think). I got one, and with the latest drivers it works, but has some quirks.Also be careful to sort out complaints about the XPS in the net: may have problems using the dock, not with the laptop itself.
And the touchpad is great by the way.
Might want to consider the skylake version, sure it's the previous generation, but the CPU perf is pretty similar, and the Iris 540 is a significant GPU upgrade. Not a nvidia/ati killer by any means, but much better than the normal intel integrated graphics.
Either that or way for similar to ship in it's kaby lake incarnation.
Also keep in mind that the "upgraded" 3200x1800 screen about halves the battery life and is reflective. Not really worth it for me (at least in a 13" screen).
Sadly you can't get more ram or an i7 with the 1080P (they called it FHD) screen.
I think it's really good machine.
Granted I owned the older 9343 model but despite the many BIOS updates (and several Linux distros) my laptop kept up phantom right clicks and cursor jumps - very annoying! No issue with Windows 10 though.
I sold it onward and happy with the real-estate 15" provides me once more.
The warranty just ended, so unless they finally fixed it for good, the machine may have been a waste of a thousand dollars. I'm crossing my fingers and hoping it keeps working.
- Plays 4k video under Windows 10
- Runs Arch linux without any hardware compatibility problems
- Silent, portable, fast (pick all three)
It sounds like an advert but this was a machine I didn't pick myself and it is the best computer I have ever used. The next time I spend money on my own laptop I will move from Thinkpad to Dell. This is after using Linux on Thinkpads for the last 13 years or so.
I thought this was worth mentioning as the Latitude is probably a bit cheaper than the XPS.
It's basically a rip-off of the (2015) macbook machined aluminium body design. It has the 7th gen processors rather than than the 6th of the new macbook, and a similar price.
Not sure about linux support, from what I've read there may be an issue with the webcam.
I ultimately went with a retina MBP (early 2015). My next laptop is likely to be either a Lenovo T460 or a Dell P50 (or their successors).
It sounds like the software you need is available on all three operating systems, so the Dell machine is a fine choice.
I'm assuming that the movies you want to watch are rips or Netflix and not something like UltraViolet streams.
I got some very good - and upgradable - hardware at a good price with an extended battery. Good call, would buy again.
Ubuntu 16.04: Pretty much works flawlessly as long as you have Intel WiFi- I had some issues with a flashing screen at first but they all seem to have been resolved using `apt-get upgrade`. Suspend/resume, audio controls, and brightness controls all work fine. I run docker images for pretty much everything and it's great to have native docker without a VM involved.
Physical Characteristics: It is very light and easy to use on the lap, on the couch, or in bed. It feels more like a MacBook Air than a MacBook Pro. Fans are on the bottom but they don't really spin up that much, even when I don't have anything under it.
Keyboard and Touchpad: Keyboard is fine. Touchpad is a lot smaller and more "clicky" than a MacBook Pro. The force touch on the MacBook Pro is way better (it's pretty much the gold standard of touchpads).
Screen: I have the FHD screen because I don't care about touch, and it is Matte (the QHD+ touchscreen is glossy). DPI scaling in Ubuntu 16.04 is hit or miss. In my experience, some apps, like Chrome, only respect DPI Scaling if it's in multiples of 0.5 Other apps, like Firefox only respect DPI scaling if it's an even number. JetBrains products do a good job of respecting DPI scaling though. I keep it at 1x DPI scaling, so everything looks pretty small at 1920x1080. If you go with the QHD+ touchscreen, native resolution is 3200x1800 so 2x DPI scaling will be an effective resolution of 1600x900, and it will look great. I think most apps should work fine at 2x DPI scaling.
Webcam: The webcam location really is stupid. I dislike video chatting on this computer so much I'd rather use my phone. I use Android and kind of miss iMessage and FaceTime from the mac (it's how I would talk to some Apple friends), but whatever.
Other Thoughts: Linux FTW. IMO, the last good release of OS X was 10.6.8. Everything after that either changed the scrolling direction or added some sort of bloat to the OS. I'd run 10.6.8 still if I could. Ubuntu 16.04 feels like getting your life back. It's super quick, you can use apt-get to install dev tools instead of hacking around with homebrew, you get the real version of `sed`, and you don't feel like Apple controls your life anymore. Gotta say it twice- native Docker support and no messing around with VMs anymore!
Take the leap of faith and get the XPS 13. Or a Lenovo with good linux support. Part of me wants to try out the big ass trackpad on the new MacBook Pro but none of me wants to go back to paying $2k every time I want to upgrade my laptop.
In either case I would say, as a single datapoint, that search on mobile is just as important as on the desktop.
In some ways more important as I am more likely to use Google Maps on my mobile device than on the desktop, and I search for both specific addresses and the name of a business.
From this classic search is still the most important from a pure eyeballs POV but mobile is significant and ever growing.
- Lenovo has decent laptops. Personally, I'd not touch anything from Lenovo after their shady stuff. (Maybe not an issue on Linux, maybe it is. I don't trust them)
- Dell XPS series are really good but people complain about coil whine, worse battery life compared to MBP and hit/miss trackpad. It might not be that big of a problem. And if you are running in clamshell mode, these are generally no issues. I don't run clamshell though.
- The Razer Blade stuff seems to be great too. They are mostly aimed for gamers but look decent. Someone mentioned about huge display bezels being really huge in person. Gotta see. I can't find any info about them here, maybe they only sell in USA.
- I skipped Asus due to past support experiences with them. Also some smaller vendors due to possible support issues I'd have especially since I'm out of US.
- A Thunderbolt 3 dock that has all the missing ports in new MacBook Pro
- Lenovo, HP, Asus release properly supported notebook with Linux similar to Dell XPS Developer edition. Makes desktop Linux available across PC industries.
- Microsoft release Surface Pro and Surface Book with Mubuntu (MS version of Ubuntu, since MS already has working relationship with Canonical)
- Cloud service via emulator that allows developer to build, test and submit iOS apps without actually owning a Mac
- Google release Pixel Book which runs a brand new OS that is ChromeOS+Android hybrid.
- Adobe releases Photoshop & Lightroom for Linux
- Microsoft releases Office for Linux
- A few major games for Linux. Makes Linux a game platform.
- One or two major Mac developers develop for Linux
- More developer using Electron and React Native for Ubuntu
But we will be back to the same by spring 2017 when Apple refreshes MacBook Pro with new CPU and cheaper price.
And maybe it would be better to hold on to your MBP, and buy Chromebook, at least to test the water with Linux (or whatever OS you want to use). Install them on small machine, setup few essential programs to you and use them for few weeks. Why am I telling you this? Well I really appreciate some things on macOS, which will keep me glued to it for few more years at least. (iTerm is one of those things)
Open up the laptop and reapply the thermal paste on the CPU with something high quality like Arctic Silver. It really needs redoing after 1-2 years. This will result in a significant improvement to overall performance. Why ? Because when OSX detects that the laptop is overheating it schedules a dummy task e.g. secd or kernel_task to throttle the CPU. Cool the laptop and the throttling stops. Use iStat Menus or top to check for the process.
Takes all of 10 minutes and iFixit can guide you through it. As much of a performance difference as going from HDD->SSD. The other most vital thing to do on OSX since all of the daemons result in lots of random reads (check fs_usage).
Naturally, the Arch Linux community has an extremely helpful wiki to help you get set up:
I will replace Windows with Linux. I heard Thinkpads are good for this. But the Dell XPS series looks very compelling too.
Have you looked at the Dell XPS 13 Dev edition, the Razer Blade Pro, the Lenovo X1 Carbon, Lenovo T Series, or the Asus UX305F?
Other than that, I've been enjoying it immensely and it made me stick to Windows at a time at which I really wanted to switch to Linux or MacOS.
- The new razer blade stealth: Great built quality, kaby lake, usb-c/thunderbolt 3, great screen, reasonable price, although im not sure Ubuntu would work out of the box.
- Xiaomi Air 13: This is not really a competitor but im really tempted to try it. It is cheap (less than 1k) it looks like having a nice built quality, fast ram, good i5 processor, dedicated nvidia GPU ( so may be some acceleration for training small deep learning models). USB-C, USB3, HDMI, Ubuntu works out of the box. CONS: you have to import it.
Portability, power and build quality are all excellent. Battery life isn't up to MacBook standards, but you get a good 4 to 5 hours on a single charge which is still fairly usable. The trackpad isn't as nice as a MacBook either, but it's good enough. Everything else about it has the MacBook Pro completely outclassed in my opinion.
15.6" 1080p IPS LED-backlit Display
NVIDIA GeForce 1070 8GB
3.5 GHz i7-6700HQ
32 GB DD4 at 2400MHz (upgradeable to 64 GB)
OS Drive: 512 GB NVMe (PCI with 2600MB/s read and 1600 MB/s write)
2nd Drive: 2.5" 1 TB SSD
1080p HD Webcam
Kensington Lock port
1x Gigabit Ethernet
2 Mini DisplayPort
2 USB 3.1 Type-C
3 USB 3.0 Type-A
SD Card Reader
Obviously the dream would be for it to look like a MacBook Pro, but I would give up the sleek case if I could run OS X reliably on that sucker.
If it's just for general web development, my plan is to buy a used 2015 MBP, but with AppleCare until mid-2018 or later, and re-roll the dice in two years.
For features and portability, I can warmly recommend SecureCRT, you won't find a more capable terminal app anywhere.
Resell value, build quality, battery life, weight are all factors that other manufacturers can't match. I really wish they'd released something better though.
You can buy a dell xps 15 today that comes with: 3840 x 2160 display / 1tb pcie solid state disk / nvidia gtx 960m (crucial for developing cuda programs and prototyping deep learning on your laptop) / 32g ram. For $2340 (ten percent off coupon at the top of the page). I'm not sure if this link will work: http://www.dell.com/en-us/shop/productdetails/xps-15-9550-la...
And this thing comes with regular usb ports and an hdmi port instead of usb-c nonsense so I don't have to immediately drop $250 in dongles just to keep the capabilities I already have. (And one usb-c port).
here's a detailed guide to getting with ubuntu from a year ago: https://ubuntuforums.org/showthread.php?t=2301071
it appears that it only works modestly well. So if you buy this, you're probably going to have to live with Windows or the issues in the above thread.
My personal plan is to buy a 1-ish year old mac and cross my fingers that someone builds a well-supported powerful linux laptop by 2018. Good sleep/power management support seems to be a common problem.
Updates are slower to roll-out to the hackintoshes, major OS upgrades can be quite a bit slower to come. This can include security fixes too.
I ended up installing Linux and never looked back. It turns out most of what I used on macOS was just the unix-like subsystem. Having Linux was just as good, if not better than being on macOS.
Of course this doesn't help if you're doing iOS development, or need to use Xcode. I've moved away, myself, but have talked to others who have used a Mac Mini as a build machine. You could also install OS X in a Virtual Machine under Linux and use it for development, which requires its own set of hacks but fewer.
Linux distributions I would recommend:
* Solus, I really like where this project is going and it's my daily driver now.
* Arch, allows/forces a truly custom setup, you end up learning a lot about your system, but might be too distracted with your system to get work done ;)
* Antergos, an Arch alternative w/ batteries included.
* elementary OS, it's the Linux distro made by the folks who loved macOS. It's beautiful and you might like it more than macOS itself.
The closest you can do, is to install Darwin (opensource), and GNUstep (opensource).
Then you can develop Openstep/Cocoa applications on your non-Apple laptop legally and in total freedom.
If you have customers who would want a MacOSX executable, you would then give them your sources, they would download Xcode, and they would compile them. This is why the GPL has been invented (or other licenses such as BSD, MIT, etc).
Now of course, GNUstep doesn't track the evolution of Apple Cocoa very closely. Your application will be compilable for MacOSX if you take some care to write it portably, and you won't be able to take advantage of Cocoa specific features, only the most vanilla and plain Openstep features. Depending on the kind of application, this may be more than enough.
For a better SNR than browsing Tonymacx86 forums, try https://reddit.com/r/hackintosh
Save your sanity and money - you can get some nice specced refurbished/used MacBooks that can just run the latest Apple stuff for a good price and save a lot of frustration with foreign hardware issues now and down the road.
Things will "just work" and you will really appreciate it.
Doing the whole hackintosh thing has improved from previous years. Before it was an absolute nightmare. It's still a lot of pain. Just less. So you have that option as well. Just remember it doesn't play nice with all hardware and you will have to fiddle a lot. Every update you will have to do your research and pray to the god of moving bits that it's a smooth transition.
then choose your osx version...
file "entryother.S" is asm that executes on AP's and "bootasm.S" executes on the BSP... both after the BIOS
maybe that's what your looking for?
GriefShare is interesting, they have a registry of meetups for those dealing with loss of a loved one > http://www.griefshare.org/findagroup
One thing that I have found to be very important is: don't fight grief.
I've realized it's a normal feeling, you should let yourself feel it, it's only worse if you try to fight it.
Remembering "the good times" with common friends/relatives/??? instead of racking your brain with the "why" also seems to make it a bit better.
Other than that, only time will fix things.
Sorry for your loss.
Take your time to actively process your feelings.
Leave your daily routine for some time and give your brain room to work undisturbed. Do something that keeps you physically active all day. Do something creative.
Explore your feelings and try to find out where exactly they come from. Don't give up just because thinking about it hurts more. It will help your brain to cope. Actively think about the countless positive memories you have. Bad emotions are much more powerful and tend to overshadow everything else.
Learn to accept.
Get plenty of sleep, it helps a lot.
Realize that this part of you is with your friend as you had shared time, life and love together.
But in all that hurt and pain due to the loss also realize that there is a part of your friend still with you. Find it. Your tears will lead the way.
That might be a way love bridges even death.
Might take a dozen listens to internalize half the content, but it'd be adopting a different perspective on life. Won't come easy
I felt grief.
I started again but was infuriated.
Lesson: ALWAYS MAKE A COPY OF YOUR WORK!!
(You did not specify what kind of grief)
The keyboard on the MB takes some serious getting used to (actually, in the ~8 months that I used that computer, I never became fully used to the keyboard), but the screen and physical size of the MB was better than the MBA. (Of course, the processor was noticeably slower... so YMMV.)
So IMO, they did the right thing, there was too much overlap between models. The MB still needs to get faster and come down in price, but I do think it will be just as ubiquitous as the MBA within a few years.
I agree with others that the current line up is sorely lacking an affordable laptop, but that will likely change (slowly; hopefully) as manufacturing & component costs come down.
Apple should have a mid priced laptop for casual users.