Backblaze Announces B2 Compute Partnerships - <AUTHOR> https://www.backblaze.com/blog/introducing-cloud-compute-services/ <comment><USER3> I see people from Blackblaze here, so let me ask: any chance we could get B2 integration in Synology's Hyper Backup ?

I know you're in Cloud Sync, but that's really not the same thing (a one/two way sync is not a backup service).

I'm not sure if you need to give Synology a nudge or something, and I would even pay a fee for it if need be, but until then I can't use B2 as one my main backup destination for all those businesses NAS I have at various small sized companies I administrate.

<comment><USER4> Yev from Backblaze here -> We'd LOVE for that to happen (and there's ways to make Cloud Sync work as a one-way street) but it looks like they are pushing their own C2 service for Hyper Backup - so it's looking unlikely that they'll add us in. There's a thread about it on their forums ([https://forum.synology.com/enu/viewtopic.php?f=3&t=120647](https://forum.synology.com/enu/viewtopic.php?f=3&t=120647)) so our hope is that if they see value in adding 3rd party platforms to the Hyper Backup service we'd be high on the list!

<comment><USER3> > and there's ways to make Cloud Sync work as a one-way street

Sadly it still means if the source gets corrupted for whatever reason the backup is done, for business files sync is really not backup (I don't think I'm teaching you anything there, but really this sadly doesn't fit my needs at all). Also Hyper Vault is all about the intelligent versionning.

While it's possible to trick it by doing the backup somewhere and then syncing THAT to B2 (and I do it for my personnal NAS), it's too much of a hassle and "complex" setup that I can't see myself pushing that to my customers.

OVH managed to get them to add HubiC in there so clearly there is a way. Hope you will keep pushing them until they move on it ! And thanks for making such a great product :)

<comment><USER5> >for business files sync is really not backup

With versioning it is.

<comment><USER3> It really isn't. Maybe I'm mistaken and then I'm listening to how you do it ?

The purpose of file syncing and backuping is very different, one is ensuring that a change on the source is replicated to the destination and is kept up to date on changes, the other is taking a snapshot frozen in time no matter what happens on the source.

<comment><USER5> If you have a file version, it's frozen in time. So if you have syncing with file versions you can rollback files individually.

<comment><USER3> I don't think I was clear enough: with a two way sync, if a disgruntled employee / script failure / any other thing destroys the file version 1.0, it gets uploaded and replace the old file version 1.0

Backup is not just about having a copy, it's having a copy that stops being kept in sync with the original after it is made.

<comment><USER5> The version (in S3) is a hash of the data so if you remove your local version and replace it then you won't be tricked into thinking version 1.0 is the wrong thing (unless someone brute forces a new file with the same hash).

There is also a concept of Write Once Read Many in storage which is used for compliance. So you can use sync with WORM and it's basically append only.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> We're thrilled about this. In short, we've directly connected our storage and their compute to ensure fast connections, and made the data transfers free. We've heard some ways people want to use this (disaster recovery, transcoding, rendering) - but would love to hear ways that you might. Thank you!

Gleb from Backblaze

<comment><USER7> Hey Gleb! This is awesome!

Are there plans to accelerate this as an offering for other providers? I think there's huge benefit in partnering with other providers where you're enabling an agnostic storage layer (any provider that needs a durable object storage system without the complexity of operationalizing one themselves). Congrats, huge Backblaze fan!

<comment><USER6> Thanks for the kudos. We're open to supporting other providers as well, including other types of services beyond compute (e.g. databases and specific verticals.)

Do you have some specific providers you were interested in having connected?

<comment><USER8> When your European region exists: I'd love to see Hetzner(.com) connected.

<comment><USER6> Looks like they're in Germany/Finland. We'll try.

<comment><USER9> Be still my beating heart. Seriously? I would drop my Hetzner storage boxes in a heartbeat if I could connect to you instead on a fast link. I have, through the years, have used their auctions to snatch quite a few SSD only boxes and so I need external mass storage their network storage offer is ... ahem ... not the fastest! I would welcome something better :)

</comment></comment></comment></comment></comment></comment><comment><USER10> Backblaze B2 is awesome and the future looks very promising. Their team is also very open to new ideas and projects.

We have few PB of data there and never had any problem.

I honestly don't see any reason for anyone to use AWS or Google Cloud for object storage, except for the outbound network transfer issue from these providers.

<comment><USER11> Redundancy? BackBlaze still only operates one (or two but in the same region) datacenters.

<comment><USER4> Yev from Backblaze here -> we actually have datacenters in California and Arizona so they aren't too close together! That said, we're also working on multi-region support so that you could move data between regions (no ETA on that yet). Hoping to get more datacenters online in the coming year!

But you're correct - we do recommend diversification, having data in multiple locations is always a best practice, and if you can have it in different vedors, all the better!

<comment><USER12> Will my data in BackBlaze get replicated to two separate buildings automatically? Or do I have to pay to store it in both California and Arizona?

S3 always stores your data in at least 3 availability zones, for instance.

<comment><USER4> We're still working on the spec so hard to say, though even if we did make you pay for it you could store it in 4 regions before hitting S3 pricing :) That said, we try to be fair in most things we do.

</comment></comment></comment></comment></comment><comment><USER13> If Backblaze added simple, cheap functions-as-a-service, I'd switch everything away from the Big Three cloud providers and Auth0 except for fallback microservices. The biggest reason is bandwidth costs, which are disproportionately huge for small and medium businesses if there are more than a couple kilobytes of transfer per invocation.

That said, I am not super impressed by these first two compute providers, and probably would not trust them to give me enough nines even if they started doing FaaS. I can spin up something similar with Kubernetes on Hetzner for considerably less money...

<comment><USER6> Which functions are you using?

</comment></comment><comment><USER14> Wow nice! They figured out a way to successfully compete with Amazon by slowly backing into little corners of their space. Love it!

<comment><USER4> Yev from Backblaze -> We're just over here doing our own little thing hoping folks join in on the fun :)

</comment></comment><comment><USER15> Can the people from Backblaze answer when they are going to accept payement in different currencies? My Backblaze bill is around $0.50 but my bank charges fees for conversion etc so the total paid is often around £2.50 or so. Would love if they'd accept bitcoin or Paypal/Amazon or charge British pounds.

<comment><USER16> Disclaimer: I work at Backblaze.

> currency conversion is expensive

Backblaze probably won't accept other currencies in 2018. However, we definitely have heard about this issue, and we have a feature in the works to allow you to "load up" your account with an arbitrary amount of pre-paid cash so that you pay ONE transaction fee to deposit (as an example) £250 pounds at once (incurring the £2.50 conversion fee exactly once) and then as Backblaze deducts from this account balance instead of a credit card there are zero transaction fees.

Would that help?

The OTHER reason this is a requested feature is some customers want a "reserve fund" to be used if their Credit Card payment fails, as a hedge against Backblaze deleting their data for lack of payment.

<comment><USER17> > However, we definitely have heard about this issue, and we have a feature in > the works to allow you to "load up" your account with an arbitrary amount of > pre-paid cash

At last. I actually did abandon B2 over DO's Spaces due to the lack of this feature, despite the far more competitive pricing on your end. That, and the lack of AWS API support, but that was mostly related to my particular use case, which was the need to mount cloud storage as disk partitions using s3ql which mainly supports AWS, OpenStack and compatible services. It does have preliminary B2 support [0] but it was really hacky and I ended up losing data because of it.

Having a prepaid credit option and the option to use PayPal for such payments like DO does would have tipped me towards Backblaze's favor to the point of trying to fix s3ql's B2 support, though. ;)

[0] [https://hub.docker.com/r/zdce/s3ql-b2/](https://hub.docker.com/r/zdce/s3ql-b2/)

<comment><USER18> JuiceFS [1] could be a replacement for S3QL, which has better support for B2, can also be mounted on multiple machines in the same time.

If you don't have more than 1TiB, JuiceFS is totally free.

Disclaimer: Founder of JuiceFS here.

<comment><USER19> Nilay from Backblaze here. This is awesome! Can you reach out to us via this form? I'd love to learn more about your software and list it on our website. Just mention I sent you here: [https://www.backblaze.com/b2/contact- sales.html](https://www.backblaze.com/b2/contact-sales.html)

</comment></comment></comment></comment></comment><comment><USER20> B2 is interesting, and the price for object storage is pretty competitive. I wrote my stuff against S3's API, particularly for DO Spaces, but DO's fairly epic pants-crapping this week has me nervous.

My use case is download-heavy, though, and a little bit bursty (but with a long tail, a CDN doesn't really address my needs); what sort of bandwidth speeds can I expect from downloading B2 when a decent number of clients, let's say 100-500, are hitting a single object concurrently?

<comment><USER21> Sysadmin at Backblaze here. Unless it's closer to 500+ and they all have 100Mbps+ connections, the clients will definitely be the bottleneck. Even in that case with smallish objects, it's unlikely that the TCP window will ramp up enough to put a dent in things. That number will of course continue going up with time as we expand and improve the infrastructure.

<comment><USER20> That's pretty awesome. Depending on how my DO Spaces tests go, I very much might try it out; it's a bummer that you guys don't support S3API, but I can deal with that. (I know Minio has a layer for B2, but I'd rather not go that way.)

Anyway, thanks a lot!

</comment></comment></comment><comment><USER22> Is there any plan for a European presence? (At least, for the storage part)

<comment><USER6> Does it matter where in Europe for you? And curious which of the various reasons does a European presence matter to you most?

<comment><USER23> Perhaps somewhere close to AMS-IX? For me, that would be network latency to non-US customers.

<comment><USER6> Thanks - definitely looking near there.

</comment></comment></comment></comment><comment><USER24> Was anyone able to figure out what bandwidth/data is included with the packet.net "tiny"? It's roughly 50 usd/month and lists dual 1gps uplink - <USER2> I couldn't see anything about bandwidth. Eg hetzner will include ~30tb/month with a gbps uplink - or roughly 45 gb/hour or 100 mbps sustained.

Given the other prices packet.net lists for bandwidth (Starting at 0.05/gb) i assume it's _not_ unmetered (that's about 300 tb for 1 gbps for a month).

<comment><USER25> Hmmm, I've found their Slack channel to be a good spot to ask Qs and get answers relatively quickly.

[https://slack.packet.net/](https://slack.packet.net/)

</comment></comment><comment><USER26> Packet wants me to contact them for a quote? I like BackBlaze's transparent pricing but won't be pairing Packet's compute service with it. Sorry.

<comment><USER4> Yev from Backblaze -> that's very interesting! What was your workflow to have them request a contact for a quote? One of the things I really liked about them was that their website is similar to ours in that it's easy to see what everything is - so very interested to hear!

<comment><USER26> Wow ... mea culpa and apologies!

I appear to have taken some weird path through the top-level "Product" menu - I'd love to say that the "Pricing" link wasn't immediately to the left of the "Product" link but at this point I'm going to have to simply claim insanity. Now that you've all steered the raving lunatic to the very transparent pricing, I'll shut up and try to find a project to justify bare-metal.

</comment></comment></comment><comment><USER27> Why single out these two providers? Shared parent company? Are they paying out of some marketing budget? Cheaper peering for some reason?

<comment><USER16> Disclaimer: I work at Backblaze.

> why single out these two providers?

They are the first two. We are very open to more!

> Shared parent company?

Backblaze is owned by employees. 100% of the board of directors work at the company every day. We have no parent company. :-)

> Cheaper peering for some reason?

Yes. We made sure any candidate partner has a direct cross connect with our locations and the data goes over pipes we own so our costs are "fixed". After you own/lease the fiber line the bandwidth is "mostly" free inside of it. I say "mostly" because we still have to pay a tiny amount for each network port on each end, some electricity, etc. But it's negligible compared to paying for bandwidth at market rates.

</comment></comment><comment><USER28> This is great news, looks very interesting for data warehouse scenarios now with something like Spark or Drill. Are there any specs on throughput available to compute on Packet?

Side note: never heard of SlicingDice before but their website doesn't seem to be working, getting a cloudflare site offline page.

<comment><USER6> Agree - would love to connect some data warehouse services. (Seems Spark & Drill are not hosted, but a customer could run those in a compute provider.)

SlicingDice worked for me. Are you still getting an offline page?

<comment><USER28> Still doesnt work: [https://i.imgur.com/g6HMbkA.png](https://i.imgur.com/g6HMbkA.png)

</comment></comment></comment><comment><USER29> Still can't beat a place in colo with few own transcode servers with FPGAs or transcoding asics.

</comment><comment><USER30> What kind of performance are people seeing against B2?

I wonder how realistic running analytics over stored data is.

<comment><USER6> B2 is object storage. Similar to any object storage you generally want to use it for storing the data, not running heavy analytics directly on it. Usually you'd want to move the data to the directly attached block storage (which our compute partners offer) to run the actual analysis.

</comment></comment><comment><USER31> Yes! Bare metal power and Backblaze affordability! I so need this!

<comment><USER6> Hey Byran - what do you hope to do with it?

</comment></comment><comment><USER32> I've been a big fan of Backblaze for several years now. I'll make sure to stop by your booth at NAB and express my nerdy appreciation for your service.

<comment><USER4> Yev from Backblaze -> please stop by! :D</comment></comment>


Lost Art of Bending Over: How Other Cultures Spare Their Spines - happy-go-lucky https://www.npr.org/sections/health-shots/2018/02/26/587735283/lost-art-of-bending-over-how-other-cultures-spare-their-spines <comment><USER3> The strangest thing about this is that children know this without any input, and then go bad. I've watched my older son (now 5) go from having a perfect squat and hip hinge to starting to bend over "like an adult" with the arched back.

There must be some reason that everyone, to some good approximation -- I'm in the US and this is what I see, does this the wrong way. Even people who know better seem to require conscious effort to do the motion correctly, myself included.

Maybe it's because squatting and hip hinging are thing that require that you work into the position, rather than "falling" into it. It is strange that it follows cultural lines; possibly it's just imitating what people around you are doing, so fixing this would require some pretty large-scale brainwashing.

<comment><USER4> I've been doing taichi for about 5 years. In addition to changing how I bend (for the better), about a year in I was in the process of renovating my gait a second time. As a person who always gets asked to 'slow down' it was a weird experience to have to ask others to do the same. Unfortunately for them now I walk faster than ever.

I came to this from a world of leg and back pain. It hasn't fixed everything but I can do almost 5 times as much without tipping over into chronic joint pain.

The quickest things I can relate to people that I learned from this time: 1) Never lock your joints. 2) "Lift with your knees not your back" is the wrong advice. Lifting "with your knees" is loading your quads. That and joint locking put all of the stress on the parts of your knee (cartilage especially) that are already overworked in the western posture.

The correct advice is "Lift with your legs", which takes longer to explain but the Cliff's Notes version is that your legs are 3 joints and lifting with your knees is only using one set of muscles and essentially locking the rest. The right way to lift is to engage your calves, your ass, and your hams.

There's a great saying I heard somewhere about the Problem with Western Posture being that we try to use our hips as a hinge joint and our knees as a ball joint. There are a lot of tight muscles in the hips and upper thighs that have to unclench to get there, and you literally feel like you're falling over while you try to sort that out. But man if you do, I've avoided half a dozen spills that should have put me in the doctor's office and one that would have sent me to rehab for torn ankle ligaments for sure.

The downside of this experience has been that I have to fight an urge to analyze everyone else's posture. I end up staring at people if I'm not paying attention. I probably look like a creep. And some people make me feel sympathetic joint pain. The number of people with fallen arches is crazy.

<comment><USER5> I've had fallen arches since I was a kid. Is there something I can do to fix it? There was a point where I was doing a lot of barefoot running on the beach and being extra careful to focus on my ankle and foot posture, and I think it helped, but as soon as I stopped running every day I reverted to my old posture (ankles rotated slightly outwards, feet as flat as a board).

<comment><USER6> There is nothing "wrong" with a low arch. It's just a different genetic adaptation. Don't believe the hype that there is something wrong with your foot that needs attention and dollars to fix.

<comment><USER7> My flat feet made me walk splayfooted, which then eventually started giving me knee troubles when I began to walk a lot. I find it a little puzzling to read these kind of takes, testimonials for Five Fingers shoes, etc. If nature could fix everything with no intervention we wouldn't need to brush our teeth either.

<comment><USER8> > If nature could fix everything with no intervention we wouldn't need to > brush our teeth either.

Well, I'm not saying nature actually can fix everything, but in case of toothbrushing, it's dependent on your diet. There are peoples knowing nothing of brushing, but they feeding themselves different than we "civilized" people are.

<comment><USER7> Walking primarily on paved sidewalks isn't really natural either.

Apparently even cavemen did make some effort to clean their teeth (and according to this article, monkeys still do): [https://www.washingtonpost.com/news/speaking-of- science/wp/2...](https://www.washingtonpost.com/news/speaking-of- science/wp/2016/12/19/a-researcher-discovered-how-cave-men-cleaned-their- teeth-it-will-make-you-want-to-brush-yours/?utm_term=.18c884f1c8ba)

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Has anyone heard of the third world squat?

It's a joke from weightlifting forums but also has some truthful parts.

[https://www.google.com/search?q=third+world+squat&oq=third+w...](https://www.google.com/search?q=third+world+squat&oq=third+world+s&aqs=chrome.1.69i57j0l5.2466j1j7&sourceid=chrome&ie=UTF-8)

<comment><USER10> I for the life of me cannot do this squat. I've explored all sorts of stretches, yoga, etc. It's the most limiting factor in my weightlifting.

I've gotten to the point where I will hover at the squat rack, spot someone doing an ass to grass, and interrogate them how they got there. Nothing I've learned has worked. I just fall backwards, _every time_.

<comment><USER11> > _I just fall backwards, every time._

Without knowing anything, I'd say check your back angle - it's probably too vertical. If you're falling backwards, point your nipples at the floor.

[https://youtu.be/QhVC_AnZYYM?t=427](https://youtu.be/QhVC_AnZYYM?t=427)

But really, just find a weightlifting coach and spend some money to get some coaching sessions. They can fix this stuff in minutes.

<comment><USER12> And if you find the vertical back angle more natural, you should try high bar squatting. With high bar you will also benefit from having your heels slightly raised with a plate under your heel or weightlifting shoes.

</comment></comment></comment></comment><comment><USER13> Anyone who's performed a deadlift knows the hip hinge. I recently was testing my one rep max and due to fatigue my back arched instead of doing a proper hip hinge. The pain stayed with me for days and was pretty agonizing. This was about 5-6 weeks ago. Since then I've been deadlifting perfectly w/o pain.

<comment><USER14> I no longer perform the conventional deadlift as a part of my routine (due to several injuries) but I completely agree with this. In my opinion the best ways to learn how to hip hinge are the deadlift and kettlebell swing.

I've recently switched to the RDL (Romanian Deadlift) with significantly reduced weight and higher reps and I personally prefer it for my lower back and hamstring training. The conventional deadlift is a great movement though if you can perform it correctly.

<comment><USER13> I also recently incorporated RDL's into my routine. Mainly to hit the hamstrings with more weight as the hamstring curl machine has a pretty low max weight and in general is annoying to perform.

I was just recently thinking that the deadlift is probably the lift I enjoy the most. There is a rawness to it that just makes it so satisfying. Also it's usually the lift where you can lift the most so that adds an extra touch.

The deadlift is killing my hands though. My callouses are starting to become a bother and my hands are pretty raw for any other lifts later in my session.

<comment><USER15> // I'm making the assumption here that you're _relatively_ new to strength sports. If I've misjudged that, sorry!

> My callouses are starting to become a bother and my hands are pretty raw for > any other lifts later in my session.

Calluses hurting late into your training session but not the beginning is typically a sign that you're not taking very good care of the skin on your hands.

Donny Shankle, a very accomplished weightlifter, has a really good video on hand care here[1]. It's sport specific for weightlifting, but it applies pretty well to strength training in general.

In addition to what he says, I've had really good success with a combination of a corn/callus shaver[2] and a dremel tool. The goal is to take the peaks off the calluses such that they're more or less flat to the rest of your hands. My typical routine for palm callus care, performed every few days, is to shower so that my skin is relatively soft, shave off any parts of the calluses on my palm that are protruding above the plane of the rest of my palms, and then smooth it out with the dremel's grinder tip set to low speed.

[1] [https://www.youtube.com/watch?v=otorSGl3sG0](https://www.youtube.com/watch?v=otorSGl3sG0)

[2] [https://www.amazon.com/gp/product/B001CYC4BG](https://www.amazon.com/gp/product/B001CYC4BG)

</comment></comment></comment></comment><comment><USER16> I find most trousers make it hard to do this. Maybe it was better before the current low-waist style took over, but the way my trousers or jeans tend to fit, there's insufficient space in the back of the leg, in the thigh region to allow for proper hip flexion.

<comment><USER17> Finding a good fit is easier said than done for probably most of us. Fortunately there are also new stretchy fabrics (including wool and denim) that give wonderful range of motion even when tightly fitted, or (in an unlucky situation) ill fitted. For example, you can find men's slim fit jeans that look normal yet are flexible enough for even yoga or rock climbing.

Now that I found a brand that fits my build and uses this type of fabric, regular, non-stretch denim feels so constricting I avoid it entirely (and without, ahem, having to resort to men's yoga pants).

<comment><USER18> Which brand would that be?

<comment><USER19> Some Levis have stretch fabric - I buy 514s, there may be others. Make sure that the label calls out the stretch material.

<comment><USER20> Thought that was an unfortunate typo - I wear the 541 Athletic Fit Stretch jeans, and remember the 514 as the old, constricting straight fit. But apparently they're making 514s on stretch now, too.

<comment><USER21> I rock the stretch 511's as my daily wear these days. I have large calves and thighs and while the fabric does rub it also gives me my full range of motion. I wouldn't want to work out in these things, but I probably could if I had to.

</comment></comment></comment></comment></comment></comment><comment><USER22> The kettlebell swing is a great way to train/fix your hip hinge. Squatting is also another movement/position we in the west have seemingly lost the ability to do well.

<comment><USER23> If I could, I would upvote this 100 times! I can only confirm that, after spending a year or so trying to perfect swings, front squats and low-bar back squats, I felt my posture, strength and fitness were as never before. At the age of 38.

<comment><USER24> Yep. Properly squatting and deadlifting fixed my back for me too.

</comment></comment></comment><comment><USER25> Just for other would be developers who are too young to know.

Don't use a bad seat for 15 years and don't sit funny and not for long periods. Also find ways to stretch your leg muscles from the calf up every couple of days (A good 30 mins). Almost every time I had a major back outage stemmed from my left leg muscles which pull on your lower back when tight.

A great invention would be a seat/table which started at 0 degrees and over the course of the day moves to 45 degree recline so that weight is constantly redistributed to different parts of the skeleton.

<comment><USER26> What about a standing desk or walking desk?

<comment><USER27> I think standing desks are great. I usually use mine for about half the day and adjust it to a seated position for the rest of the day.

I will say, though, that while standing or sitting, your posture will dictate how well that time is spent - it's pretty easy to mess up either one. If you stand with your shoulders back and the weight evenly distributed on your hips and back, it should be possible to stand for many hours at a time. If you sit, making sure you sit up straight and keep your spine curved naturally and making sure you get up a few times to keep your circulation going in your extremities, you should reduce most of sitting's bad effects.

</comment></comment></comment><comment><USER28> > _And the hip hinging is sprinkled throughout sports. Weightlifters use it > when they do what 's called a deadlift._

Now, I'm by no means an expert, but I can confirm this. Powerlifters generally try to perform deadlifts with a "neutral" spine. This doesn't exactly mean "straight"—you can consult a good coach for details—but it's pretty close. Here's a pretty typical demonstration which is good enough to visualize it, though other coaches may differ in the details: [https://www.youtube.com/watch?v=4AObAU- EcYE](https://www.youtube.com/watch?v=4AObAU-EcYE)

As I understand it, the idea is to distribute the weight evenly around the spinal disc, and to avoid putting too much pressure on the front edge of the disc by curving the spine forward.

A similar effect can be achieved by keeping the back closer to upright and lifting with the legs, as seen in several squat variations.

Of course, the other things that _may_ help are having enough muscle and not carrying too much abdominal weight. Anecdotally, weak spinal stabilizer muscles seem to contribute to some people's back pain.

<comment><USER29> Yeah, although neutral to flexion is fine for a lower back for a squat or a deadlift. In fact, with a heavy weight, good luck NOT flexing your lower back on a deadlift or at the bottom of a squat.

The 'upright' squat you described is an Olympic lift variation - <AUTHOR> highbar squat. I was going to send a link over but I hesitate to toss a random article or video (some of which are crap). But it's probably easy to watch an Olympic lift video from the olympics, as that's the cream of the crop.

A squat positioning with more of a hip hingeing is more of a Powerlifting squat. I can definitely recommend Rippetoe's explanations here [https://www.youtube.com/watch?v=QhVC_AnZYYM](https://www.youtube.com/watch?v=QhVC_AnZYYM) even though I myself do high-bar.

As you can see (especially as explained in the video), the bar positioning plays a role in how upright your back is as you squat (since you mentioned that aspect). It's because of the center of gravity and the straight-path of the bar. It's obvious if you see an illustration of the bar path and these positions.

However, a 'neutral' back, I don't know, I'd call it more of a flexed back (which may be neutral under load). A neutral back might be more of a gymnastics-specific thing.

Regardless, core strength (meaning lower back, abs and obliques, among other things) is VERY important here.

<comment><USER30> Neutral is not implying unflexed or unengaged. It's just the position. You'd better be tight as hell through your whole squat/DL though.

</comment></comment></comment><comment><USER31> I basically stopped using furniture altogether years ago because it became apparent how it was interfering with the natural preservation of my ability to bend over and get down and up from the floor without effort.

Observe your average older person who lives a life employing furniture pick something up off the floor, or pick themselves off the floor. It's not uncommon for them to need assistance in the latter case!

If they had no furniture all their life, unless they were injured, they wouldn't have these problems because they couldn't possibly go through life without being able to get off the floor regularly having no furniture around.

It's also proven to encourage me to move more throughout the day, as well as stretch more. The floor is spacious, it's luxurious, and unstructured. It invites me to move around, stretch, and reconfigure myself when one position gets stale or something is going numb.

Furniture is structured, it's almost like bondage. You must sit in this chair design this way, your back must be up at this angle, your legs go here. It's totally unnatural and honestly seems like an awful compromise in part to increase density, and perhaps project wealth over those who live in furniture- less, largely empty rooms, or maybe it's just good business to sell furniture to everyone. And in the process it's preventing you from having to bring yourself to the floor and back up to standing height dozens of times every day.

There were some studies I read about geographic regions with the largest concentrations of the oldest living people. I don't have the link handy, but one of the things they observed was an exceptional number of these places didn't use furniture. They noted how the lack of furniture naturally kept the people limber into old age.

I love sitting on the floor now. It's become incredibly uncomfortable and simply annoying for me to sit on furniture. When I'm with my peers, and I'm not even that old - if we all end up sitting on the floor somewhere, I'm shocked at how visible the difference is already. Many adults are not able to be comfortable on the floor becuase they don't have the necessary flexibility for the variety of floor positions that would otherwise be available to them. It's because they stopped spending time on the floor after childhood, because in the west successful adults use furniture. You want to be successful, don't you?

<comment><USER32> That's a good idea! How do you use your computer/laptop? What about eating? And how long did it take for you to get used to not having furniture?

<comment><USER31> I don't know, it's all the obvious techniques you'd imagine in lieu of furniture. Whatever is comfortable and practical. The orientations vary, constantly, that's part of the value. When one position becomes tiresome, a reconfiguration occurs.

I'm not a good person to ask about time to adapt, I stopped sleeping in beds as a teen opting for the floor. So I was already pretty well acclimated by the time I decided to get rid of the rest.

</comment></comment></comment><comment><USER33> Physiotherapists have given me a variety of reasons why, but I basically can't bend over in the way they are suggesting.

> "Oh yes! In order to hip hinge properly, your hamstrings to have to > lengthen," Shapiro says. "If you have tight hamstrings, they prevent you > from bending over easily in that way."

My hamstrings are incredibly tight and exercise and daily stretching haven't helped. The problem is my entire biomechanics are wonky. I barely use my abs, instead putting the load they would usually do onto my hamstrings, tightening them.

The only solution is for me to get a specialist therapist and retrain myself on how to move, walk, run, etc. I work a traveling job, so that's basically not possible right now. On the bright side, I look totally normal in my movements.

<comment><USER34> I need to get to bed, so I'll save you my (continuing) story of retraining my body to move. But this is from the mystical days of old when FAQs on Usenet contained magical information: [https://archive.org/stream/Stretching_and_Flexibility_Brad_A...](https://archive.org/stream/Stretching_and_Flexibility_Brad_Appleton/Stretching_and_Flexibility_Brad_Appleton_djvu.txt) Hope it helps you!

</comment></comment><comment><USER35> We need to bring back squat toilets into western society. Get rid of the sitting toilets. Then we'll end up with strong legs and be more likely to hip hinge properly. Also less hemorrhoids.

<comment><USER36> I've been on those toilets before at street-side filthy restrooms in hot & humid summer days, uncleaned vomit and splattered excrements of drunk people from the night before. It's the worst when you're feeling sick yourself from too much drink, and you have to squat for 30 minutes. You sweat like a pig and swim in a urine-covered floor; it's a full work-out session every time you go into a bathroom like that.

</comment></comment><comment><USER37> Learning to hip hinge saved my life! OK, the back pain itself wouldn't have killed me, but I think associated depression might have. I first learned it from Foundation Training: [https://www.youtube.com/user/DoAFounder](https://www.youtube.com/user/DoAFounder)

Like the article says, learning to properly squat and deadlift really helps too

</comment><comment><USER38> I haven't seen anyone posit a theory as to why Western people bend this way, so I'll go:

Extreme sex and body shame.

We receive, from a young age, shame about exposing - even with clothing on - "sexual" parts of the body - breasts, butt, and crotch.

Women are strongly motivated to tuck in the backside because it is both shamed and unsafe in our society to stick out our butts. This is why women squat to tie their shoes in public. Rape, assault, catcalling, is so prevalent and a constant awareness for women in public. This pose would also be considered "unprofessional" in a workplace.

Men are discouraged as well, lest they incur the worst male insult in our society : "gay". Men are shamed and called gay from childhood if they take this hip-hinge pose. So they stop.

Bending at the waist exposes the vulnerable backside in a way that is unsafe in historically Puritanical Western society.

<comment><USER39> It seems like you are reaching pretty far for a social explanation. It seems more reasonable to start with lifestyle and work style. Maybe lots of sitting and standing are to blame? Maybe something about industrialization or household conveniences (washing machine, etc.)?

I suppose there are some social factors, but I would assume they are secondary unless I see evidence otherwise.

<comment><USER38> I don't think I'm reaching. Read the comments below, about the fact that children learn this spine-bend posture early on, way before any sedentary lifestyle. I'm pretty sure 3-year-olds aren't using washing machines either.

I'm speaking from firsthand personal experience, and overwhelming experience seeing others go through the same cultural conditioning I described in my post.

<comment><USER39> How is 3 years old "way before any sedentary lifestyle"? I consider my family moderately active, but my 3 year old is certainly familiar with the couch. In more agrarian societies, there are probably a lot fewer opportunities to sit somewhere comfortably.

And did you consider agrarian but sexually-conservative regions (maybe India or the Middle East?), or developed but sexually-liberal regions (maybe Mediterranean?), to see if those line up with your theory?

</comment></comment></comment></comment><comment><USER40> For related explanations: Esther Gokhale worth looking up, and also Kelly Starrett - lots of videos

<comment><USER27> Esther Gokhale's book "8 Steps to a Pain-Free Back" saved my back. I basically learned that I was sitting like an idiot for hours at a time, and walking in a manner that did not distribute my weight efficiently on my back.

I went from hand-wringing over my ability to keep backpacking and playing sports at 40 to wondering when or if I'll ever have to pack it in.

</comment></comment><comment><USER41> I blame it on school PE classes where they make you touch your toes repeatedly. They act like there is something wrong with you if you are not flexible that way.

</comment><comment><USER42> Reading this article just makes me ask... Do people deadlift?

[https://www.bodybuilding.com/fun/how-to-deadlift- beginners-g...](https://www.bodybuilding.com/fun/how-to-deadlift-beginners- guide.html)

I'm not a very strong person. But Deadlifts are part of my routine. Again, not for athletic purposes of anything, but "Practicing to pick things up" is basically a Deadlift.

And every day, we bend over to pickup small objects, and occasionally, we bend over to pick up heavier objects (ie: Grocery shopping: Picking up bags off the floor or whatever). So the deadlift is the most straightforward way to do this maneuver.

I mean, its no Olympic level "Snatch" or whatever. But the basic deadlift has to be one of the more "practical" weightlifting moves to routinely practice. Its also an overall good, full body exercise.

Doing the deadlift improperly can result in bad muscle strain and maybe even injury... but that's what makes practicing to do it properly even more important.

</comment><comment><USER43> This is nothing new if you have bad back, like me. Pain can be a good teacher when it comes to proper form. As a bonus, I have a runner's knee, so my wall- facing squats are damn near perfect. I'm perfecting my technique, and nowadays I'm doing my squats _by ear_. I know my squats are perfect when I don't hear any creaking in my left knee.

As for why we, westerners bend this bad way by default ? It may have something to do with chairs. Sitting on a chair makes you used to bending over at your hips, because a chair makes any other bending impossible.

</comment><comment><USER44> The jefferson curl is the secret weapon for loosening up hamstrings - <USER2> careful with the weight at first though.

</comment><comment><USER45> Isn't this just a very long-winded way of saying "lift with your legs, not with your back"?

<comment><USER37> Some of us really needed the convincing, ok.

In all seriousness though, I had heard that my whole life but never really knew how to implement it until someone explained it in this way. It's lifting with your hamstrings and glutes and upper back in reality, not just "legs"

<comment><USER46> I always thought "lifting with your legs" was just hamstrings and glutes, and it took like 3 months of daily yoga before I realized this all works quite a bit better if you use your upper back instead of lower back. Then I found out I have hip muscles, and life has been alright since then.

I don't know how many men age 20-50 that I've seen joke about "lift with your legs!" and then proceed to laugh as the subject just fumbles around worse than they would have, because they're not sure what lifting with your legs means either.

The really bad part about all this, is that without good posture and defaulting to "cashew-style," you're preventing your lungs from using their full capacity. Which I think makes people slightly oxygen-deprived, more sleepy and daydreamy, causing them to sleepily lean forward into their screen instead of taking a minute or two and finding some good posture.

I don't know how you can fix this either. Most Americans do destroy their lower back and then spend their rest of their life with a lopsided body, because they have no idea what good posture is, and it takes a long long time to actually fix the part of your mind that causes bad posture. You have to be willing to accept that your entire way of operating your body has been slightly off, for a really long time.

</comment></comment></comment><comment><USER47> I thought this was going to be an article about being conciliatory...which I'm really good at.

<comment><USER48> But you might also be really bad at it.

<comment><USER47> I'm definitely open to that possibility

</comment></comment></comment><comment><USER49> I'd recommend one of the featured experts, Stuart McGill's books to people having back pain. Straightforward practical advice but with an HN-level of science-based nerdiness behind it. Not the fuzzy woo that you find in many health related topics.

</comment><comment><USER50> Any idea when a curved back isn't bad? I mean we have the ability to curve the back for some reason.. right?

Feels weird to completely make the back stiff forever

<comment><USER51> The real danger with your spine is rotation under load. So, picking up something heavy, then rotating your torso instead of turning your entire body.

TBH, you probably won't hurt your spine by curling your back. Mostly it's just a poor way to transmit force between the floor and whatever load you're carrying. You could hurt the muscles involved in making your back erect, though.

</comment></comment><comment><USER52> +1 for weightlifting. This is basically how you kettlebell swing, snatch, clean & jerk, and deadlift.

</comment><comment><USER53> It's called a deadlift.

</comment><comment><USER54> Except to anyone who's ever been on an H&S introductory course.

<comment><USER55> I'm assuming you mean "Health and Safety" and not one of the many other meanings for that set of letters. On the other side of the pond, where this article originated, H&S isn't really a thing. The closest thing we have over here (and I'm only guessing here) would be OSHA and as a "office worker" I can say they really haven't been a significant part of the my day to day. Might be different in a labor oriented profession though.

</comment></comment><comment><USER56> No, this is simply wrong information. Or rather, this is information provided to people who are otherwise terribly out of shape.

Look up Jefferson Curls, or j-curls. These are essentially the exact motion that this article is suggesting is the wrong way to do things.

Now without question, you can do stronger lifts and put less direct stress on your spine by doing squats to pickup things rather than bends. But full fitness and flexibility absolutely include bends like the ones this article is telling you to avoid.

Wherever your weakest muscles and structure are is where you'll first suffer injury when you try to do something beyond your capability. So if you learn to squat to pick things up, that's fine; but if you neglect to maintain your flexibility, especially including spinal, you will get a back injury one way or another. Rather than bending over to pick something up, it will be turning over in bed, or coughing while carrying something.

What bothers me about specialist advice is that it is usually focused on one thing, one specialty. But whether you're talking about human anatomy and systems or economics or mental health (or many other very complex systems), you cannot just focus on a narrow set of changes or fixes.

<comment><USER57> I'm confused by your comment, From my reading you seem to say the article suggest squatting but from my reading the article is not advocating for squatting at all. It's advocating for hip hinge where your back remains straight and your hips rotate using your hamstring to pull. Unlike the j-curl you mention the back remains straight. Similar to deadlift technique.

<comment><USER56> You're right - I went from hip hinge to squat because that's the natural progression of how you would adapt your movement in order to pick up something heavy. The posterior chain is the strongest set of muscles in the body, so the heaviest lifts will involve a squat (which is both a hip hinge and a leg bend, butt drop).

I'm not referring to the standing negative squat as in weight lifting, I'm more referring to the dead life move done by people with longer legs and shorter torsos/arms. You probably know that there are many variations of dead life. What I was referring to, which I took the article to basically be advocating, was a type of bend (lift) that isolated the spine as much as possible. And I was arguing that use of the spine in a bending, flexing way is not inherently bad - it's just that typical modern (sedentary) life allows the core to weaken and reduces flexibility.

Instead of telling people to isolate to avoid injury, we should be telling people to move more (starting lightly) to increase flexibility - then add weight to increase strength everywhere.

</comment></comment></comment><comment><USER58> Why make it about culture/race? Using anecdotal evidence the author is suggesting there is cultural reasons why this is happening. It's not too far fetched to go one step further and make it also about race. I'm surprised people are ok with semi-racists articles like this perhaps because they come from NPR? All you have to do is remove one layer to realize the pseudoscience used in this article is saying some cultures and therefore races behave physically different than us (although in a good way, but nevertheless) without any rigid evidence. Yet no one here seems to mind that and not see how this leads to prejudice and exacerbating that we are different and everyone else is "others".

There are people in the US who also bend from the waistline.

<comment><USER59> There ARE physical differences in races though. It's not so major that you should treat people as more or less than you, but there's nothing wrong with pointing out that there's different types of people around the world. For example when studying disease you can see statistically certain diseases are more common for certain races or sexes.

The article even mentions we still have "bending at the hip" in our culture as well especially in sports, yoga, and gardening. But we could benefit more than that.

And posture is cultural in that it varies somewhat depending on where you are. A military bootcamp would have a culture that promotes a certain posture. Even between a English tea room and a Japanese tea room there's different rules about posture. Then you can also even consider the fashions in an area. For example people who wear heels a lot (even a small heel) vs someone who is constantly wearing flip flops will have a very different squat. People who wear heels a lot will have a harder time doing a squat while keeping their heels down due to a shortening of the muscle on the back of their leg.</comment></comment>


Read the email Bill Gates sent to employees for Microsoft's 40th anniversary - <AUTHOR> http://venturebeat.com/2015/04/03/read-the-email-bill-gates-sent-to-employees-for-microsofts-40th-anniversary/ <comment><USER2> I'm disappointed by the lack of shoutout to 'developers'.</comment>


Nokia's OPK is out, replaced by Microsoft exec as President and CEO - <AUTHOR> http://www.engadget.com/2010/09/10/nokias-opk-is-out-replaced-by-stephen-elop-as-president-and-ce/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+weblogsinc%2Fengadget+%28Engadget%29 <comment><AUTHOR> having been a nokia customer now for quite some years (I own an iphone 3gs and a galaxy s for research purposes now) it's been sad to see them went down like the have done... gosh they even had a multi task, full web experience slate device 4 years ago... but the vision didn't get them anywhere.

hopefully with some new blood on it a rebirth can happen and we can start seeing some disruption in the market, after all nokia research has a lot of cool stuff that could be put in practice nowadays that the smartphone market as grown smarter</comment>


Pay Student Athletes - <AUTHOR> http://thepopchef.blogspot.com/2011/10/pay-student-athletes.html

<comment><USER2> Wouldn't that make college more expensive for everyone who was not a football or basketball player?</comment>


Pwnagotchi: Deep Reinforcement Learning for WiFi Pwning - <AUTHOR> https://pwnagotchi.ai/ <comment><USER2> See also: Weaponizing and Gamifying AI for WiFi Hacking: Presenting Pwnagotchi 1.0.0 [https://news.ycombinator.com/item?id=21301467](https://news.ycombinator.com/item?id=21301467)</comment>


Do not use coin base exchange. Running un-authorized credit check. - <AUTHOR>

They are trying to do credit check without explaining the user before doing that. exploiting non-tech savvy users <comment><USER2> Coinbase and others including Square, and pretty much any other Payment Provider that offers accounts with no physical signature card use id validation services that generally pull information from your credit report in the form of validating questions to answer and potentially a color coded range of your credit score (getting the actual score results in a "hard" credit hit.) These do not reflect on your credit report and are referred to as "Soft credit checks." You would get much more explicit warning if it were not as required by law. These types of blanket statements cover the soft checks. The action they are referring to is terminating an account with an active bankruptcy or failing an OFAC or PEP (politically exposed persons) check.

</comment><comment><USER3> Looks like they state it pretty clearly in their User Agreement: ([https://www.coinbase.com/legal/user_agreement](https://www.coinbase.com/legal/user_agreement))

"(e) Authorize Coinbase to, directly or through third parties, (i) make any inquiries we consider necessary to verify your identity and/or account information, and (ii) request and obtain any consumer report, credit report or similar information relating to you and to take action we reasonably deem necessary based on the results of such inquiries and reports, and hereby authorize any and all third parties to which such inquiries or requests may be directed to fully respond to such inquiries or requests."

... I'm not saying that they're awesome for doing this; but I don't think it's accurate to portray their running a credit check as "unauthorized". You definitely authorized it.

</comment><comment><USER4> Any proof?</comment>


Google Cancels I/O, Its Biggest Annual Event, Following Coronavirus Fears - <AUTHOR> https://www.buzzfeednews.com/article/alexkantrowitz/here-are-all-the-coronavirus-conference-cancellations-so-far <comment><USER2> It's a bit disingenuous to call I/O it's biggest when Cloud Next attendance is 35k versus 5k for I/O. Especially when Next generates lots of sales.

Maybe it's most "publicly visible" would be more apt.</comment>


Show HN: FormulaDesk – powertools for Excel - <AUTHOR> https://www.formuladesk.com <comment><AUTHOR> Hi. I'm Gareth, the creator of FormulaDesk. It's like ReSharper for Excel - adding useful features that should've been part of the product anyway. All feedback is welcome.

Please let me know how it can be improved - let me know your ideas/suggestions/advice.

</comment><comment><USER2> Looks like a cool project, but don't know how many own HN uses Excel to that degree. I think a video showing functionality would be great however showing functionality :)

<comment><AUTHOR> @kevinsimper: Thanks, that's a good idea. I'll see what I can do.</comment></comment>


Bing Loves The Porn Hounds - <AUTHOR> http://www.techcrunch.com/2009/09/09/bing-loves-the-porn-hounds/ <comment><USER2> It's a good thing that part of Microsoft's shtick is giving their employees doors instead of cubicles. I feel awkward when my job calls for testing flash games at work, I don't want to imagine how testing out this feature would feel with coworkers walking by . . .

</comment><comment><USER3> "Discovered via a TechCrunch employee who has asked to remain anonymous." And it has a link to the employee's twitter page. You gotto love TC humor.</comment>


The man who lives without food - <AUTHOR> http://www.telegraph.co.uk/active/10032594/The-man-who-lives-without-food.html

<comment><USER2> Rhinehart himself states my concerns with his project:

 _"I am no biologist though," he admits, "and can't isolate the placebo effect in a sample size of one."_

Which is why I am glad to hear the following:

 _Rhinehart plans to raise money on the Kickstarter platform – a popular method of crowd-sourcing investment for entrepreneurial schemes. Next will be a large-scale controlled trial that's been greenlit by an ethics board._

Soylent is an interesting product that has received a lot of hype. I look forward to seeing the results of a well designed large-scale trial.</comment>


Coroutines in C (2000) - <AUTHOR> https://www.chiark.greenend.org.uk/~sgtatham/coroutines.html <comment><USER2> A really good library that we use is libco[0], it supports different architectures and mechanisms. We use it extensively on Fluent Bit[1] to manage async IO network operations (epoll + coroutines).

\- [0] [https://byuu.org/library/libco/](https://byuu.org/library/libco/)

\- [1] [https://fluentbit.io](https://fluentbit.io)

<comment><USER3> Do you use [https://github.com/Tencent/libco](https://github.com/Tencent/libco) or [https://byuu.org/library/libco/](https://byuu.org/library/libco/) ?

<comment><USER2> [https://byuu.org/library/libco/](https://byuu.org/library/libco/)

</comment></comment></comment><comment><USER4> A cool library that implements C coroutines, available for both idiomatic C ([http://libdill.org/](http://libdill.org/)) and in the same style as Go ([http://libmill.org/](http://libmill.org/)) with line by line translations

<comment><USER5> For those wondering how it works, libdill keeps track of context between function calls and does some clever stack modification in assembly.

<comment><USER6> I wonder if it would work from Rust. I was looking at something minimal like this.

<comment><USER7> I haven't used it at all, but doesn't Rust have experimental support for coroutines?

[https://github.com/rust-lang/rust/issues/43122](https://github.com/rust- lang/rust/issues/43122)

<comment><USER8> libdill and co implement stackful coroutines. Each coroutine has a native call stack which gets swapped out by a userspace scheduler. Rusts proposed coroutines and async functions are stackless. They are implemented as pure Compiler Transformations, and don't allow to yield at arbitrary points.

Rust actually had stackless coroutines in the past (libgreen), but moved from it due to the overhead it brought for code that didn't require it.

</comment></comment></comment></comment></comment><comment><USER9> I ran with this idea last year and wrote a proof of concept library that wraps libev using using this concept to allow you to write async C code inline. It's about 250 lines of macro abuse and the resulting code looks pretty funky but it ultimately works. I have a simple echo server example here: [https://github.com/jeremycw/zasync/blob/master/echo_server.c](https://github.com/jeremycw/zasync/blob/master/echo_server.c)

</comment><comment><USER10> As an OOP dev this kind of horrifies me, even though it works okay (though it's surely not thread-safe?)

Nevertheless, even in C, I'd find it conceptually simpler to understand if the functions were written as pure functions, returning a tuple with (c, state) and passing the state back into the caller. Using non-idiomatic tricks and macros in this way is harder to read and understand.

<comment><USER11> Here's a POSIX compliant portable getopt() routine I wrote which uses this style. Is this hard to read? Note that it's several times _shorter_ than every other implementation I've ever seen, and if I do say so myself I think it's eminently readable.

      static int
      u_getopt_r(int argc, char *const argv[], const char *shortopts, struct u_getopt_r *K)
      {
        K->optarg = NULL;
        K->optopt = 0;

        GETOPT_ENTER;

        while (K->optind < argc) {
          K->cp = argv[K->optind];

          if (!K->cp || *(K->cp) != '-' || !strcmp(K->cp, "-")) {
            break;
          } else if (!strcmp(K->cp, "--")) {
            K->optind++;
            break;
          }

          for (;;) {
            char *shortopt;

            if (!(K->optopt = *++K->cp)) {
              K->optind++;
              break;
            } else if (!(shortopt = strchr(shortopts, K->optopt))) {
              getopt_err(argc, argv, shortopts, K, "illegal option -- %c\n", K->optopt);
              GETOPT_YIELD('?');
            } else if (shortopt[1] != ':') {
              GETOPT_YIELD(K->optopt);
            } else if (K->cp[1]) {
              K->optarg = &K->cp[1];
              K->optind++;
              GETOPT_YIELD(K->optopt);
              break;
            } else if (K->optind + 1 < argc) {
              K->optarg = argv[K->optind + 1];
              K->optind += 2;
              GETOPT_YIELD(K->optopt);
              break;
            } else {
              getopt_err(argc, argv, shortopts, K, "option requires an argument -- %c\n", K->optopt);
              K->optind++;
              GETOPT_YIELD((*shortopts == ':')? ':' : '?');
              break;
            }
          }
        }

        GETOPT_LEAVE;

        return -1;
      }

Here's macro magic, the complexity of which is more than made up for by the readability of the core code:

      #define GETOPT_ENTER \
        do { \
        static const int pc0 = __LINE__; \
        switch (pc0 + K->pc) { \
        case __LINE__: (void)0

      #define GETOPT_SAVE_AND_DO(do_statement) \
        do { \
          K->pc = __LINE__ - pc0; \
          do_statement; \
          case __LINE__: (void)0; \
        } while (0)

      #define GETOPT_YIELD(rv) \
        GETOPT_SAVE_AND_DO(return (rv))

      #define GETOPT_LEAVE \
        GETOPT_SAVE_AND_DO(break); \
        } \
        } while (0)

</comment></comment><comment> c-smile And here is my C++ version of Simon's idea, C++ generators in 10 lines header file:

[https://www.codeproject.com/Tips/29524/Generators- in-C](https://www.codeproject.com/Tips/29524/Generators-in-C)

</comment><comment><USER12> We tried to implement coroutines based on the CoroutineTS here: [https://github.com/LoopPerfect/conduit](https://github.com/LoopPerfect/conduit)

CoroutineTS uses coroutines that are implemented on the LLVM-IR level, as a result they get optimized away in many cases.

Unfortunately the CoroutineTS has also some design flaws around allocations and ownership

</comment><comment><USER13> I thought this was going to be an article about setjmp() and longjmp(), which can be used to implement this kind of mechanism.

</comment><comment><USER14> Has anyone used these to write interrupt service routines? Seems like there's an opportunity here. You can take your existing synchronous code and not have to rewrite it into something like continuation-passing style. This is a source of a lot of bugs.

<comment><USER15> I have, it's not pretty either: [https://github.com/nraynaud/webgcode/blob/gh- pages/interpola...](https://github.com/nraynaud/webgcode/blob/gh- pages/interpolator/main.c#L156)

<comment><USER16> i have done cps plumbing in C with poor mans closures for the entire interrupt path, and given its natural event-like nature, it really all comes out pretty nice.

<comment><USER17> If its possible would love to learn from it. Any chance of taking a look at it ?

<comment><USER16> the actual work was done under contract as in proprietary, but the closure library is the interesting part, is owned by me, and something i can send you.

accountname @gmail.com

if you're interested we can go over the interrupt path, its pretty straightforward at that point. by flipping the control flow around, the virtio virtqueue support for example becomes nice and self-contained. it provides an interrupt continuation to the interrupt layer, and each queue is initialized with a continuation to call on a dequeue. vector assignment is still a bit cross-cutting.

<comment><USER17> Thanks that is extremely generous of you.

I would still encourage that you put it up somewhere with a license of your choice. Many would get an opportunity to learn a thing or two.

</comment></comment></comment></comment></comment></comment><comment><USER18> Isn't this just an application of a protothread[1]?

There are implementations that use the GCC goto and label pointer, which then avoid the need for a switch statement.

[1] [http://dunkels.com/adam/pt/](http://dunkels.com/adam/pt/)

<comment><USER17> Answered here [https://news.ycombinator.com/item?id=19109008](https://news.ycombinator.com/item?id=19109008) by VygmraMGVl

In lining the answer.

> _Protothreads is a library implementation of this trick. In fact, the > protothreads creator even references the linked site in their explanation of > protothreads (very last paragraph)_

</comment></comment><comment><USER19> What's the purpose of this code in the original decompressor? Assuming c is an uchar, aren't EOF and 0xFF equal?

      if (c == 0xFF) {
        len = getchar();
        c = getchar();
        while (len--)
        emit(c);
      }

<comment><USER20> Decompression, the first byte is the number of repeats and the second is the byte to repeat.

<comment><USER19> Ah, thanks!

<comment><USER21> Specifically this is known as "Run Length Encoding".

</comment></comment></comment></comment><comment> s-macke I guess one of the applications of Coroutines could be WebAssembly. When you run WebAssembly on a website which needs 100% of the CPU for more than a few ms, you have to use the "setTimeout(fn, 0)" trick to prevent the "this website stopped responding" message. That means you have to store the current state at some point and continue in the function fn (after waiting 0 ms). Languages which support coroutines out of the box would help a lot here.

<comment><USER22> Aren't Web Workers (which can run WASM) supposed to fill that role?

<comment> s-macke The web worker helps a little bit. You can send data to the UI thread whenever you want. However on the receiving side you have the same problem. The web worker only receives data when it is idle. For example if you want to send key presses to the web worker, the web worker has to idle. The utilization of the CPU to 100% with simultaneous responsiveness is quite difficult to implement. Actually you have to play an endless game of message ping pong so that the message queue is always filled.

</comment></comment></comment><comment><USER23> Several previous discussions: [https://hn.algolia.com/?query=Coroutines%20in%20C%20points%3...](https://hn.algolia.com/?query=Coroutines%20in%20C%20points%3E40&sort=byDate&dateRange=all&type=story&storyText=false&prefix=false&page=0)

</comment><comment><USER24> I really like that trick. It's very powerful. But I wonder what the difference is between this and protothreads?

<comment><USER25> Protothreads is a library implementation of this trick. In fact, the protothreads creator even references the linked site in their explanation of protothreads (very last paragraph) [1].

[1] [http://dunkels.com/adam/pt/expansion.html](http://dunkels.com/adam/pt/expansion.html)

</comment></comment><comment><USER26> You could use thread_local variables these days for re-entrancy instead of the ctx->i idea.

<comment><USER27> Thread-local variables make it thread-safe, but still not re-entrant. That's ok, if you don't need more than one state per thread.

<comment><USER26> You're right. Thanks.

</comment></comment></comment><comment><USER28> That page uses very simple HTML. Just paragraphs of text divided into sections with headings. Some code examples laid out side-by-side with a table. Tiny stylesheet. No JS. Loads quickly, easy to read. Warms the cockles of my heart.

<comment><USER29> The only issue of these websites is the width: using the full width of the screen is just too much for reading.

If you add {max-width: 60em; margin: auto;} to the body tag it looks much better.

<comment><USER30> Back in the day, we had multiple windows on the screen at one time, so this wasn't a problem. I _think_ it was Windows which defaulted to full-screen, and led to the plague of sites assuming that the browser would be full-width on a landscape screen, but I could be wrong.

Although I love using a tiling window manager now, I kinda miss my old System 8 Macintosh setup, with Netscape open in one window & Think C (or was it CodeWarrior?) open in another.

<comment><USER31> On a Mac, Spectacle gets you pretty much there.

I haven't found something similar for Windows, but I'm sure there is one.

<comment><USER32> I'm a very happy user of Amethyst, a tiling WM [https://github.com/ianyh/Amethyst](https://github.com/ianyh/Amethyst) Makes OSX actually usable.

</comment></comment></comment></comment></comment><comment><USER33> python has this:

      def function():
          for i in range(10):
               yield i</comment>


Welcome to the New Space Age - <AUTHOR> https://www.bloomberg.com/news/features/2018-07-26/welcome-to-the-new-space-age <comment><USER3> An interesting aspect of collecting all these space stories in one place is that it allows you quickly confirm how many conform to the same science- journalism template: an extended human-interest story that doesn't start dribbling bits of science until many paragraphs in. Even when the focus of the article is a human's role, the writer follows the formula of telling a compelling anecdote rather than actually delivering important facts.

"In early February, Gwynne Shotwell arrived in Saudi Arabia for a bit of last- minute cleanup...."

"Kathleen Howell never aspired to walk on the moon. When she watched the first lunar landing as a teenager in 1969, she was more intrigued by the looping route that brought the Apollo 11 astronauts from Earth to the Sea of Tranquility and back..."

"On July 18, outside the West Texas town of Van Horn, hundreds of Blue Origin employees and their families and friends gathered to watch the New Shepard rocket blast off toward the edge of space...."

"The chicken sandwich has to get to space. This is what everyone at World View Enterprises Inc. was thinking as they set to work in the predawn hours of June 29, 2017, at the Page Municipal Airport in Arizona....

"Shou-Ching Jaminet, a molecular biologist and former researcher at Harvard Medical School, spent almost a year preparing an experiment for her small biotech startup, Angiex, to study the effects of weightlessness on a potential cancer drug. By June she was nervous with anticipation,..."

Does no one else get sick of this? I would love more inverted-pyramid coverage of science.

<comment><USER4> It's because research has discovered that people care about single, individual stories; especially those they can relate. So stories like this are how they capture people not already interested in the topics' interest. You see this everywhere. It's not "see this home get remodeled" it's "hear the story of this family and how remodeling their home changed their life", not "bake an awesome cupcake" but "while Betty bakes let's see her family at home and how her mum is doing". Most people just don't connect with big picture ideas or raw data.

<comment><USER3> That's an explanation but not a justification. People like celebrity gossip too, but newspapers feel a duty (due to both external social pressure and an internal code) to not include updates on the opinion of the Kardashians as part of their war coverage. Although the upteenth description of a random postdoc's laboratory life (an example used elsewhere in this thread) seems less trashy than the Kardashians, I think they have similar news value.

<comment><USER5> It is a justification. If newspapers were a public good, they could afford to write pieces that didn't necessarily land well with the public, but had more substance around the science.

While newspapers don't include the Kardashians in the war coverage, they DO include the Kardashians. War is very different from Science - it is straightforward, exciting to read about, and has an immediate human interest. Science is none of those things.

<comment><USER3> You aren't disputing whether it's a justification, you're disputing my empirical claim that newspapers leave the Kardashians out of war coverage for principled reasons. But we can just pick some other news topic that is also dry like science yet newspaper feel duty-bound (or shame-avoidance-driven) to not enhance with celebrity gossip. (Otherwise you're claiming that duty/shame play no role whatsoever in news coverage, which I think is clearly false and am not interested in arguing about.)

<comment><USER5> Hopefully my tone didn't make it seem like I was spoiling for a fight - <USER2> don't know of a dry topic that's not enhanced with stories about the people involved in mainline journalism.

<comment><USER3> That's also not what I'm saying. I'm saying there are certain types of enhancements (Kardashians) which are considered unbecoming to discuss in certain serious topics (supreme court decisions). I think the list of eschewed enhancements for science should be expanded to include the type discussed in my top level comment.

<comment><USER6> There is probably a balance in how much unbecoming things can you leave out of your newspaper before its readership drops so low that it goes bankrupt.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Shout out to the stunning issue cover photo by John Kraus (/u/johnkphotos), who got his start posting photos of launches on Reddit's /r/spacex.

[https://twitter.com/BW/status/1022430733829324800?s=19](https://twitter.com/BW/status/1022430733829324800?s=19)

<comment><USER8> Wow ! This must be one of the greatest rocket photo I've ever seen, it looks surreal, too clean to be true, the perfect shape of these 9 fire jets !

Thanks for sharing it. I'd love to get a high res, standalone (without the Bloomberg cover) version.

<comment><USER7> I'm not sure if Kraus invented those underexposed exhaust shots, but he's certainly popularized them over the last couple years.

He sells prints on his website: [https://johnkrausphotos.com/buy- prints](https://johnkrausphotos.com/buy-prints)

<comment><USER9> Not to quibble, but they appear perfectly exposed to me... that's the true technical achievement in his work.

<comment><USER7> Oh yeah, definitely. That's just the term I've seen other launch photogs use for it — I assume they mean underexposed relative to a normal photo trying to capture the rocket itself. (Disclaimer: I know next to nothing about photography outside of ~5 hours in a dark room in high school.)

e.g. [https://www.reddit.com/r/spacex/comments/899jq5/jumped_on_th...](https://www.reddit.com/r/spacex/comments/899jq5/jumped_on_the_superunderexposed_engine_view_train/)

</comment></comment></comment></comment></comment><comment><USER10> It's hard to assess the quality of all these articles listed in this special page but — oh my — the topics are very well choosen and quite interesting. I easily calculated I will spend the next few days to read them all, not just skim them. Great job, Bloombergians!

</comment><comment><USER11> Didn't mention Rocket Lab that wants multiple launches a day to near orbits. [https://www.rocketlabusa.com](https://www.rocketlabusa.com)

</comment><comment><USER12> Meanwhile in Asia...[http://inc-asean.com/editor-picks/is-southeast-asia-the- new-...](http://inc-asean.com/editor-picks/is-southeast-asia-the-new-bastion- for-space-technology/)

</comment><comment><USER13> Can the link please get changed to the actual article and not the issue landing page? Thanks.

[https://www.bloomberg.com/news/features/2018-07-26/welcome-t...](https://www.bloomberg.com/news/features/2018-07-26/welcome- to-the-new-space-age)</comment>


YouGreen: Save the Planet one video at a time - <AUTHOR> https://chrome.google.com/webstore/detail/yougreen-save-the-planet/kkmjnhmmeibepfpgnfpodpfjfahbmalm <comment><AUTHOR> The idea of YouGreen came to me in IIT Kharagpur, where mostly everyone listens to music on YouTube and most of the time it's running in the background tab with 1080p quality(well, it's the same case in the outside world too). What if there's a chrome extension that automatically downgrades video quality(with no compromise in audio quality) when video autoplay in background and upgrades to the default settings when you change video yourself, without affecting UX?

Here's how it works:

\- Install extension. \- Now, you can set default quality by clicking the extension's icon located on the address bar. \- Now whenever any video that will autoplay in the background, it's video quality will automatically be downgraded to lowest, with no change in audio quality. \- And when you'll come back to that tab, that was playing music in the background, and play some other video manually, YouGreen will intelligently upgrade to your selected default video quality.

To know more, visit [https://anshulkharb.com/side_projects/yougreen](https://anshulkharb.com/side_projects/yougreen)</comment>


Dark Web OSINT with Python and OnionScan: Part One - <AUTHOR> http://www.automatingosint.com/blog/2016/07/dark-web-osint-with-python-and-onionscan-part-one/ <comment><USER2> So I heard the course designer, who is this no-name author generally in Infosec for his work on this no-name Gray Hay Python book (yes, that's absurdist sarcasm).

[https://talkpython.fm/episodes/transcript/37/python- cybersec...](https://talkpython.fm/episodes/transcript/37/python- cybersecurity-and-penetration-testing)

He was talking up ISIS analysis using his OSINT methods for someone who does not speak Arabic by analyzing the black Jihadist flags (I find that kind of shoddy, as someone who knows that is painting with broad, but deservedly ugly brush for such people) with Python and OpenCV if I recall.

Has anyone taken the course and willing to say it was worth the money? He is no fool, and the price tag was steep, so I was curious if any in the community saw it is as a worthwhile investment opportunity.

</comment><comment><USER3> It's neat to see some of my tor domains show up in [https://github.com/automatingosint/osint_public/blob/master/...](https://github.com/automatingosint/osint_public/blob/master/onionrunner/onionscan_results.tar.gz) . There's even the unicode art I put in my http headers in the resulting json entry.

</comment><comment><USER4> Not to take away from the content, but I do cringe whenever anything is installed by piping curl into bash. Yes, I understand that's exactly the provided way to install GVM and that this is supposed to be on a throwaway VPS, but this is an article focusing on security :|

If you were referencing a specific commit, okay. Just installing from HEAD? You might as well email the maintainer your credentials.

<comment><USER5> I mean, most programs run an installer as the alternative, which is still code being executed on your machine (often as root), doesn't piping bash have the same permissions?</comment></comment>


Ask HN: What are your gaming habits like? - <AUTHOR>

I would imagine that like many people on this site I have a long history of being a bit of a "hardcore" gamer.  When I was younger and in middle and high school I was the kid who got all of the gaming magazines, read forums, and got addicted to Counter-Strike and Warcraft III.  I just really enjoy games.  However, I am starting to think that they are comparable to TV in terms of being a waste of time.  Granted, I do still enjoy the occasional game such as Demon's Souls but a game I really find great only comes along once in a while.  This wouldn't be a problem because I really want to limit my time spent gaming and focus on working on development and potentially start-ups, but I am finding that I still feel the urge to buy games and especially read news about games.  I am even contemplating building a new PC for Starcraft II.  I am just worried that I have a compulsion really.  Games really seem to limit my development time because there is just only so much time I can look at a screen in a day.<p>So I guess my real question is, did you give up gaming to become a better programmer?  And if so, what sort of things did you replace it with?  I am the kind of person who needs some sort of competitive hobby and I having a hard time finding one. <comment><USER2> From 1996 to 2003 I was pretty obsessive about Diablo, Diablo II, Starcraft, Quake1/2/3, UrT.

I played almost no games from 2004-2007 or so. Then I started playing games a few times a week for an hour or two at a time. I've completely avoided WoW and refuse to even touch any game like it: games where the biggest loser wins.

I think it's really nice to be able to sit down and play a game for an hour or two every once in a while. If you're spending more than 5-10 hours a week on gaming or watching TV you're probably going to regret it looking back. That's a lot of time to devote to semi-mindless entertainment. Some amount feels healthy and positive though.

<comment><USER3> Posted right after you and noticed a very interesting similarity. I took a 3 year hiatus ('06 to '09). Wonder why we both waited that long to return?

</comment></comment><comment><USER4> Gaming and I have an arrangement.

In university, I learned an important lesson about myself: I play to win. Ultra-competitiveness works great in a lot of areas of my life, but has a drawback: when I encounter a game that doesn't have an "end", I still try to win, whatever that ends up meaning in context.

At university, I learned about MUDs, and they sucked me in completely. I would ignore classes, exams, friends, and if it weren't for a cafeteria right next to student computer labs, I wouldn't have eaten much; all in the quest for another level, another "wizard" (programmer) position, etc. At one point, I had completely stopped _playing_ MUDs, and started _building_ them. Skills were acquired, languages were learned, computing cycles were stolen, and in retrospect I learned more about group programming, system administration, networking, and social systems from a couple of years of "slacking off" than I ever did from my formal education.

After two years of abysmal grades (in everything except CS), my university politely invited me to explore other opportunities for a year while I got my act together. (Which I did; I got married, launched my first startup, and went back to school. I repaired my previous damage by retaking a few classes, but then relocated for a better opportunity, and never did complete my Bachelor's degree.)

So, the arrangement: I'll play any video game that has a finite conclusion or obvious play break-points. World of Warcraft is completely out of the question for me (I'm sure I'd love it), but quick rounds of FPS or racing games are fine. Mobile games are perfect for me: quick distractions with almost no social interaction that I can pull out when I have downtime, and put away quickly when something comes up.

Also, unrelated side note: racing real cars is a hell of a lot more satisfying than racing virtual ones. :)

\----

To djhworld's point: for me, it's not really about time management; I slice up my time pretty efficiently under normal circumstances. It's about a complete lack of self-control when gaming; competitiveness and hyper-focus on the goal win out over rational self-interest every single time.

(I don't suggest that my experience is typical, but that's how it's worked out for me.)

</comment><comment><USER5> I hear where you're coming from, in my teens I competed in FPS leagues and travelled to meatspace tourneys and had a riot doing so. To continue enjoying the competition aspect I had to conciously cultivate a mentality of responsible gaming similar to one of responsible drinking. IE, don't do it alone (physically, online is alone), don't do it to excess, and don't let it be the center of your life. Now when I'm feeling competitive I have friends over for a Rock Band/Halo/GoW night, or plan a LAN party for some oldschool FPS action. Also for quick and dirty LAN action on a whim, grab some buddies and take over a net cafe. You could be doing the same at home but it's the social aspect that helps keep it balanced.

I guess the short answer is, like djhworld says, budget your time. Fun and work are both important, make time for each and enjoy!

</comment><comment><USER3> I played competitively from 97-2003. Quake, UO, EQ, Halo, WoW, Tekken Tag, Call of Duty, Marvel vs. Capcom 2, etc.

I dropped it all for a few years and got into DJing.

The whole time I was building software.

For me, I thought it was the competitive spirit. I thought I needed something to be 'better' at. But when I went back to WoW about a year ago, I found that I could play by myself and I just needed something to be 'obsessed with' or 'addicted to.'

As such, I've stopped gaming and focused my 'obsession' on my startup! I still have a life, go out, etc, but my free time is comprised of reading hackernews, building things, or working on launching.

So to answer your question... yes, I gave up gaming. I still play the occasional game but if I can't put 100% of my time into it, it's not fun.

The few things I've found over the years that helped me alot: 1) Find someone else competitive and play a console game for 30 minutes per day... like during lunch. A co-worker and I played Street Fighter 4 and it was great. We kept a strict timeclock on it and it gave me my 'fix.'

2) Get an iPhone, download a new game each week, and play it on the way to/from work. Obviously this works better for me being in NYC and riding the subway, but I'm sure you can find a way to make it work for you.

3) Don't read gaming blogs/websites casually. I find this to be the #1 thing that sucks me back in and instead I choose to read startup stuff.

I suspect that as more and more former 'hardcore' gamers snap out of it and start applying their talents elsewhere (other than counterstrike websites!), you'll see a bunch of quality programmers and designers emerge.

3/4 of my staff played games competitively or 'seriously' and the majority only play 1-2 per month. They are all amazing at what they do. I hope they don't all quit when Starcraft 2 comes out :(

Edited to add: I actually landed my current job because I played video games. A video game tournament company in NYC wanted to hire someone to run their website and I've worked my way up since.

</comment><comment><USER6> [So I guess my real question is, did you give up gaming to become a better programmer? And if so, what sort of things did you replace it with? I am the kind of person who needs some sort of competitive hobby and I having a hard time finding one.]

So I too did Counter-Strike and WC3. When I was in college, my friend and I ran a website called thewac.net (kinda dead now, don't bother going there), and it was associated with our custom counter-strike servers with a zombie mod. That taught me alot about programming and community. I moved on to create a DC++ Hub on the college network and that taught me more about systems administration, data/user management, social community, etc. etc. Then I graduated.

I've been working at my new job for almost a year, and my coworker has like 20 years under his belt in experience, and I've learned more from him about programming and technology in less then a year, than I did in 5 years of college. He's also a gamer, so we also discussing gaming as well. (Currently Bad Company 2). If you want to keep at programming, I highly suggest you jump into the Unreal Tournament 3 engine or the Source engine (Valve) and try programming for a game.

That said, if you want something competitive, I recently took up hiking in the Adirondacks, and I've decided I want to do all the summits of the ADK's and the Catskill's here in New York State. The amount of punishment it is on your body is brutal to me, and yet liberating.You compete against yourself. Your other options are to look for local sporting leagues to join, or pick a hobby for competition.

Look at yourself and think of what you want to improve and then ask "What can I do to improve that part of me?"

For me, it was my physical shape, and my lack of adventure. Hence, hiking in the largest state park in the United States, and picking Mt. Marcy for my first hike. Eventually I'll move to Colorado and do the rockies.

I hope that helps.

</comment><comment><USER7> I have definitely noticed the time I spend programming has decreased dramatically since I returned to gaming (Steam is to blame here). While I do regret that I don't have as much time as I'd like to work on programming, I know that (for me, at least) my interests move in cycles, so in a few months I'll probably move away from gaming and back to hacking in my free time.

If you are just looking for a competitive hobby, I'd suggest rock climbing. You can do it by yourself as a personal challenge, or you can join a team and do it competitively. Either way its a lot more healthy than sitting in front of a screen playing games.

</comment><comment><USER8> I never really considered myself a hardcore gamer. About 4.5 years ago, my co- workers game me a 10 trial on WoW. I played it obsessively for 3 years, but never to the point of end-game raiding, because I never wanted to commit to actually making arrangements to play a video game.

I quit for the Summer as a well-received birthday gift to my wife, and then started up again in the Winter, when it's much less convenient to do something outdoorsy in the evening.

Before WoW, I spent alot of time being social on the internet, maintained 2 blogs, wrote a bunch of plugins for various blogging platforms. This I don't really miss. I do miss reading in the evenings, but after interacting with text all day, it is very difficult to read for more than an hour in the evening.

Now I play a few evenings a week for a couple of hours. I generally spend my days intensively developing software, so I don't feel like I am being unproductive gaming in the evenings. In May, I, with the rest of my regional office, was let go, and I decided to learn iOS development and am developing an app for the iPad during "normal working hours."

</comment><comment><USER9> I was a pretty hardcore FPS gamer in high school (n.b. I graduated in '97). I continued a bit into college, becoming enamored with racing simulations. It was killing my grades and sucking up time I'd rather be hacking.

I shook the habit in 1999 or so, and rarely return to gaming. I can play for about an hour or two at a time if I limit myself to one day per week. If I start to play more often than that, I seem to go down the rabbit hole and get obsessed with something again. OpenArena and Portal are pretty good examples of things that almost consumed me again.

I am not a developer. I'm a security nerd who occasionally programs tools for myself or my peers. I spend a lot of my time researching, breaking, fixing and streamlining things.

As for hobbies that don't involve hacking, I have chosen bicycling, writing, photography and backpacking. I've managed to cram all four into a single adventure quite a few times :D - Load a bunch of cargo on my bike, ride 30-50 miles to a remote area, set up camp, take lots of pictures, come back home, and write about it.

</comment><comment><USER10> The brunt of your question is the fact that you feel guilty for spending your time enjoying Games rather than programming.

Perhaps your real concern might be how you manage time. Gaming and programming don't have to conflict with one another as long as you manage the time you spend on each activity.

Yes you might not be able to have a marathon 6 hour session playing CS as you did in your younger days as unfortunately the toils of adult life tend to take precedence, but if you schedule in a bit of gaming time in the evening or at weekends then I don't see there's any reason why you have to 'give it up to become a better programmer'.

</comment><comment><USER11> Oh... gaming. Yes.. I enjoy gaming very much, but the sad thing is that I absolutely suck at games. Especially in the games I like. And now days gaming seems bit crap with consoles taking over etc, so the best I can do is try to make my own games (which hasn't been very successful either).

About being waste of time like TV. Well, it can be very true. But like TV and movies, if you just cherrypick good ones then it uses much less time and provides intellectual challenges instead of being a waste of time.

</comment><comment><USER12> I used to be addicted to Counter-Strike and after a while i decided to delete it because i wanted to spend more time developing. It took some discipline, but i managed to completely delete it. After a few months, while being very stressed and in need of some entertainment, i decided to install the game again. Turns out i didn't really enjoy it anymore, so i once again deleted the game and i haven't touched it ever since.</comment>


What are numbers really? - <AUTHOR> http://edge.org/conversation/what-are-numbers-really-a-cerebral-basis-for-number-sense

<comment><USER2> An article from 1997? BTW, his "Consciousness and the Brain" is one of my favorite books.

<comment><AUTHOR> What's wrong with 1997? :)

I hadn't read anything of his until that article, will definitely do now.</comment></comment>


Cool new Perl feature: postfix dereferencing - <AUTHOR> http://perltricks.com/article/68/2014/2/13/Cool-new-Perl-feature-postfix-dereferencing

<comment><USER2> I'm unconvinced - it makes code reading more difficult by moving the "this is what you're dealing with" sigil to the far end, away from your current focus. In his examples, it's not terrible but imagine this:

        push @fish, $monkey->{flange}->{trim}->{flaps}->@*;

Instead of immediately knowing you're pushing a list of items by seeing this:

        push @fish, @{ $monkey ...

You have to read the entire line to figure it out. Bleh.

<comment><USER3> That's exactly my argument against it, it's less skimmable</comment></comment>


Tell HN: Alphalab is accepting applications for their Spring 2011 class - <AUTHOR>

Alphalab, the Pittsburgh based startup incubator, is accepting applications for its next class.  They provide $25,000 in funding, office space, great mentors, weekly educational sessions, unlimitted supply of beverages, etc.  It is a great experience and I encourage everyone who has considered making the leap to at least apply and explore what they have to offer.  You can get all the info you need at http://alphalab.org/ <comment><USER2> Clickable:

<http://alphalab.org/></comment>