tslug
In a gig last year, I needed to improve the build turnaround times on a Jenkins system. After learning everything I could about Jenkins, I realized the correct answer was to delete it and rewrite my own version that ran on the local system, which was way, way faster and much easier to debug and maintain.
Not having to commit/upload your code to a build server and then wait to get an executable/package back is an enormous time-saver just in that overhead alone, but even the build itself was faster, even though it was written entirely in bashscript.
Go figure.
I concur with others. Elbereth was useless w/o a wand of fire in 3.6.0. Taught me to learn new survival habits, like staying much closer to my pet and making sure I can always go from burdened to unburdened by dropping only a sack.
Ascending is mostly luck and discipline, and the discipline comes from practice and focus. I find playing nethack calming, and it's a good way to measure how well I'm able to stay in the moment. If I die stupid, it's usually because I'm not all there.
If I'm doing something new, and I am uncertain about what my odds are, I'll read the source code.
I've only modified the source in 3.6.0 to create a general random number generator using a more robust (and more consistent) algorithm than is likely used in most libc variants. My interest there was mainly in perfect cross-platform state reproducability given the same key sequence.
I usually tear off the sheets before I'm done, so that if I go multiple rounds, my TP is prepped. Usually, that means I tear off 3-4 strips of 2 squares each if it's thick paper, or strips of 3 squares if thin. After going gluten-free, I rarely end up using all the strips, and I'd say about a third the time, I'm done after using my first two squares of it, so the rest is wasted.
For cooking, I understand olive oil is unhealthy (I think you create carcinogens as a side-effect), as are many other oils, but that coconut oil doesn't do this because of its different melting temperature.
We're also unable to create emergent materials right now, because we don't right now (and may never) have the horsepower to do molecular-level simulation to find out how light interacts with the surface. For similar reasons, breaking something open like an egg, a log, or slicing open flesh is never going to yield truly emergent results. To some degree, they'll always have to be artistically approximated on a case-by-case basis. Those approximations may have increasingly sophisticated interactions as time goes on, but I am reasonably confident they'll never truly simulate things at the molecular level.
As a result, I did as much as I could using only bash internals, and very rarely did I use pipes, because they always fork()'d a bash subshell in addition to whatever the process was.
In about 7k lines of bash script written to completely automate the iterative development of two games with a shared game engine featuring dockerized server containers, I was able to avoid using sed in almost all of it. When I did use it (pretty sure only two places), it was basically for mass substitution of variables inside of text files, and the multi-line syntax worked very nicely for this, as I could form the sed line with a loop over all the variables I wanted to replace.
It turns out for most bash scripts, you can do the most common sed substitutions using bash's rich variable substitution expressions. For instance, you see in a lot of bash scripts calling commands like "dirname" and "basename" to get the directory and filename of paths. There's a much faster way to do this in bash:
path=/tmp/my/path/to/stuff.txt
dir="${path%/*}"
file="${path##*/}"
other="${path/stuff/other}"
That dir line means "delete the shortest string that matches /* from the end of the string". That file line means "delete the longest string matching */ from the start of the string." That other line means "replace the word stuff with the word other in this string".The key to the exploit is at the heart of the core gameplay mechanic, which is that every transaction in capitalism is a codec that decimates the complex history and state of the values and liabilities of a good or service down to a single number- the price.
So hiding the abuses of others is one of the many exploits you can hide in the compression artifacts of this global codec. The key workarounds for the exploits in scalar money commerce come in the form of laws, regulations, and investigative journalism. These are all extremely high-latency, low-reliability workarounds.
Scalar money commerce was invented as a low-tech, distributed hack to solve the complex barter chain problem. It worked, but it always had issues, and it didn't scale well.
We need to evolve beyond this primitive system of commerce that decimates everything to a single number at each transaction to one that journals state with long vectors of information tracking millions of dimensions of value and liability, and that uses more sophisticated game design and graph algorithms to solve complex barter chain problems.
Whether young or old, I think it's important that the person start by asking themselves what they would like a computer to do for them. From there, you can start to bite off small pieces of the challenge, slowly making progress towards something they actually care about.
One of my main go-to databases has become nutritiondata.com, which gives overviews of the nutrition information in pretty impressive detail on just about any dish or ingredient you can imagine.
Wait, what kind of flu was this, Ebola Zaire? Since when does influenza destroy organs?
Taking the flu seriously is definitely advisable, but something sounds amiss here.
We're seeing this in machine learning right now. Machine learning can replace a lot of the code we used to implement with expert systems or rote heuristics. If you can develop that code (and not many can), you can command unusually high salaries, but there will come a time when developing machine intelligence becomes fairly straightforward itself. In fact, this is already beginning to happen. And then even these coders with their rare skills will start to see their salaries fall.
This has been a consistent pattern throughout the history of software engineering. However, I believe we're going to see salaries fall off a cliff soon, because I believe we're actually quite close to automating good software engineering in general.
It's going to be amusing, as a lot of the best coders feel particularly superior and entitled to their impressive compensations.
I get the sense that I'm upsetting you, and I don't mean to do that. I'm sorry if I said something to offend. I want only to engage in an open discussion about this and to offer a different point of view. I believe in it very strongly, and I have given it a great deal of thought and even given talks on how to operate an economy within such a system. I by no means think it's foolproof, nor Utopian- just better.
I'm currently under deadline and a bit pressed for time, and I feel like we might have a more effective conversation over skype. Feel free to email me at [email protected] if you'd like to swap contact info and chat about it further.
They've seen this with police officers wearing body cameras. They receive 93% fewer complaints. That's a profound difference.
What you had for dinner exactly is indeed "private" as you describe, but you see where I'm going with this? Your effective privacy is being pushed into a corner, because it's now possible with all of the little bits and pieces of clues you leave everywhere and the advent of big data to correlate these pieces into such a precise picture that your effective privacy is approaching zero over time.
Ask anyone famous how hard it is to maintain a private life. It's much easier to go in the direction of transparency than backwards towards more privacy.
If you want to be more private, that means that no matter the level of encryption, you can never post your brutally honest thoughts in facebook or twitter or HN ever again. You can never let people know where you're visiting. What you're eating. What you're wearing. Who you're dating. You have to clam up. Because whether or not you've encrypted everything, you still leave fingerprints, not only in the IP addresses but in piecing together all the information you're sharing in order to home in on the identity of the poster.
It takes an enormous amount of effort to obfuscate your writing style and all your proper nouns, and it's not just effort. I think it costs you a piece of your humanity.
To answer your question about watching the abuser, if all information is broadcast (like literally broadcast openly on 802.11ac, for example), then in all likelihood, the people closest to the sources of these broadcasts are going to be the folks who can make the best use of the data. Too far away, and you won't even be able to pick up the signal. If someone further away can see value for reviewing it, then it's going to make sense to incentivize someone closer to archive and host it.
Putin and Erdogan get away with what they do because of asymmetric information. If their misbehaviour is similarly broadcast, then it levels the playing field.
And it changes journalism from being about leaking information and more about better analysis of information, its veracity, its implications, etc, as information would go from being valuable to being a commodity.
Right now, the wealthiest do appear to be writing the tax code.
And no, I do not think you should override the wishes of the people the data is about (within reason). That's central to my point. It turns knowledge into responsibility instead of power.
Replacing capitalism is a fine idea too. Even Trump, the original fan of capitalism, is making a show of kicking out folks who might have lobbying ties.
In fact, if you think about how a healthy family or healthy company works, the first thing they do is push capitalism to the outside, because it tends to make people upset.
That's why you're not encouraged to share salaries with each other or why you're not encouraged to put up advertisements encouraging people to come to your office for consulting for a 20% off for a limited time only. That's why when Mom serves you breakfast, you don't pay her $10, and kids don't say, "I dunno, Mom. Joey's Mom down the block serves a much more competitive breakfast and is offering 50% more love."
When you reduce the value of the goods and services people provide down to a scalar, it becomes trivial to compare people on a line, and that way lies drama.
If you think about it, the idea that the clearly multidimensional value of goods and services can be formally represented by a single scalar is ludicrous on the surface of it, and now that we have cell phones that can do a billion vector operations in one second, there's really not much reason that we shouldn't be migrating to a more accurate and powerful way to represent value using long, sparse vectors. This actually goes very nicely with broadcast surveillance, because you can repurpose all that information to capture far more attributes and information on any good or service all the way down the supply chain.
Likewise, if you expect privacy in your personal life, but you work for the government and are forced to be transparent there, then using big data techniques and the many services tracking private individuals (uber, facebook, google, twitter, HN posts, others' cell phone captures, etc), you can suss out just about everything you need to know about their supposedly private lives, whether or not you know how to use Tor, can tolerate the dogshit Tor bandwidth and latencies, and assuming your Tor exit relays haven't been compromised.
When you create zones of privacy and transparency, what you're doing is making the private zone more powerful than the transparent zone, and you're making the transparent zone a liability to the private zone.
This is exactly the opposite of what you want to motivate. You want to generally motivate people to be transparent and to protect them for being transparent. Broadly speaking, that's the only way we're going to get more transparency. Right now in the US, transparency is generally equivalent to liability. It's all punishment, little reward.
But I believe we're already at the point that privacy is effectively gone. It's just a question now of whether the people who have the information is only the big corporations, big governments, the best hackers, and/or whoever paid for it, or whether we want to pull this privacy band-aid off and just disarm their power in the first place by broadcasting the information and changing our behaviour and rules on the back-end of what our responsibility is to others with the information we have on them.
If you broadcast everything, then if some people are dicks, you see that, too, right? And if we still get to be judged by a jury of our peers (hope-hope), then with any luck, there are enough nice people out there to say, "Yup, dick move. Stop that."
Privacy is just an eggshell defense. When/if it's breached, that's that. The dicks win. We currently have so little recourse, because it's so badly asymmetric. The dicks now have the information and proceed to hurt you with it, but you don't necessarily have the information showing them hurting you.
I find when "transparency" is used in conversation these days, it tends to mean, "These guys over here shouldn't be allowed privacy, but I want to keep mine."
For instance, if you stuck multiple cameras in my shower that were broadcast to everyone, I would ask that you not force my friends or family to see it (but if course if they wanted to, they could), and I'd ask that you not tell me what you think of the footage unless you're a dermatologist telling me about a worrisome new mole you noticed, or you're someone who notified a first responder because you noticed I just slipped and knocked myself unconscious and was starting to bleed to death, in which case I'd like to thank you. If you want to make me a part of a study, go nuts! If you want to jerk off to me, I'm flattered, but again, prolly don't want to hear about it (unless you're my type).
That's how you can respect me. I can specify it. We all can. There's probably multiple lists of things that large groups of us want in order to feel our shower footage was respected, and I could just click on one of them. I'm sure many of mine fall under the GoNutsButDon'tWantToHearAboutIt and MedicalAndScientificValue lists. So if you decide man, gotta have me some of that shower footage of Dave, by all means, but with this approach, knowledge comes with a measure of responsibility.
This is very unlike how it works today. If footage of you in the shower leaks, boy, that's that. Here comes the internets to tell you everything you never wanted to know about your genitalia...
Why didn't they do a careful analysis of the cavity mass before and afterwards? Or electron microscope analyses of a few points of the outer surface before and afterwards to see if the microscopic topology changed?
Did they rule these out some other way?
Improvement requires more information, not less. Democracy is about equality. You don't have equality when you don't have equality of information. The only way to have a level playing field is to have everyone's information publicly available.
Once you do that, you have to emulate the benefits of privacy in some other way. Tolerating more and respecting the wishes of others is I think the best way forward.
If you've got a better way to emulate the benefits of privacy, I'm all ears, but don't try to convince me we can have privacy back, not in this age of the internet of things, drones, Uber, Google, Facebook, smart cars, cell phones, big data, big corporations, big government. It's just not going to happen.
Perhaps Y Combinator would care to share their IP access logs and tell you which servers appear to be scraping these posts? You could do it yourself, if only... oh yeah, privacy.
I look forward to FOIA-liberated records the NSA, HS, CIA, FBI, and local law enforcement agencies have on us. I also look forward to reading the FOIA-liberated transcripts of all the backroom deal-making where it seems the government is actually being governed from.
Do you think individual privacy helped bring us together as a nation to nominate the best candidates and elect the best President? Or do you think individual privacy helped us vilify each other in this election?
If that's what you meant, then neither path sounds easy. They both sound like a giant pain in the butt. However, Path #1 sounds a hell of a lot healthier in the long run to me. It's the one I advocate, because I believe more information is always better. You can certainly argue that it will be abused, but if everyone can see everything, then you can see the abuser doing the abuse as well. That's a key point that's easy to miss.
As to the diminished power, there's a similar argument to be made regarding wealth inequality. Hard to imagine the wealthy would agree to higher taxes if it hurts them, yet some of the most enlightened and even the very wealthiest do believe this, because they understand that while their individual wealth goes down if viewed in isolation, holistically, their true wealth goes up, because they improve the quality their country, its services, and the people they share their lives with.
I am not benefiting from surveillance. I am a game developer and engineer. I see things from that perspective.
We can't make compelling multiplayer games by hiding information from the server. We need as much information as possible to make sure everyone has as good a time playing the game as possible. We also need to know if some players are actively "griefing" to ruin the good time others are trying to have.
I think the mistake we make is in keeping this information to ourselves or selling it to third parties (that happens). The information should be broadcast to everyone, and if it's of some use, then it should benefit the people who the information is about directly, and by benefit, I don't mean they should be targeted for more appropriate advertising. I mean benefit, like get paid if they're having trouble paying bills, or get love if they're feeling down, or get food if they're hungry, or medical attention if they're sick.
Unfortunately, we are currently too culturally immature and litigious to be respectful of that kind of information, which is why developers don't broadcast it.
We just ceded our government to a guy who won by way of asymmetric information. We had his opponent's taxes and emails, but we didn't have his. How can candidates be judged fairly in a situation like that? One of the repercussions of this is that we now have Republican-controlled Legislative and Executive branches, and it sounds like the Judicial branch will be next. That's what asymmetric information does. It creates imbalances in power. If we can see what they're doing just as easily as they can see what we're doing, it becomes a lot harder to throw stones in our glass houses.