HN user

atomicbeanie

170 karma
Posts22
Comments70
View on HN
electrek.co 1y ago

Tesla Autopilot Flips Car over in Perfect Driving Conditions

atomicbeanie
29pts9
www.reuters.com 1y ago

Average Tariff Rates Between US and Top Trade Partners

atomicbeanie
8pts0
www.factcheck.org 1y ago

Was the Signal Chat Illegal?

atomicbeanie
8pts0
www.eff.org 1y ago

Endless but Pointless Litigation Guaranteed

atomicbeanie
3pts1
tonsky.me 2y ago

Tonsky: Don't go crazy with Clojure unless it makes you happy

atomicbeanie
22pts3
www.cmdzero.io 2y ago

Choose your own adventure style Incident Response

atomicbeanie
3pts1
hackaday.com 5y ago

The First Woman Astronaut and Her Team

atomicbeanie
2pts0
www.nytimes.com 5y ago

Life in a Country of Hate?

atomicbeanie
2pts0
cosmosmagazine.com 5y ago

Marine Species Flee the Equator

atomicbeanie
2pts0
www.miguelruiz.com 5y ago

Being intentional with our blah blah’s

atomicbeanie
1pts0
blog.fogus.me 7y ago

Warning: Reading Books Leads to Detainment

atomicbeanie
2pts0
www.planetary.org 7y ago

LightSail 2 code update looks likely

atomicbeanie
1pts0
news.mit.edu 9y ago

This quantum computer is the end of cryptography

atomicbeanie
2pts0
www.nytimes.com 10y ago

Stanford rape treated like drunk driving by court

atomicbeanie
1pts0
www.aclu.org 10y ago

Map showing new All Writs cases to break privacy expectations

atomicbeanie
2pts0
arstechnica.com 10y ago

Court considers source code inspection not necessary for verification

atomicbeanie
3pts0
ncase.me 10y ago

Neurotic Neurons: An interactive exploration

atomicbeanie
49pts7
www.google.com 10y ago

Meet the Samburu elephants in Maps

atomicbeanie
1pts0
theweek.com 11y ago

Does the United States government still unhold the right to due process?

atomicbeanie
3pts0
en.wikipedia.org 11y ago

Corporate Welfare or the Next Fannie-Mae: Export-Import Bank of the US

atomicbeanie
1pts0
www.washingtonpost.com 11y ago

DEA warns of stoned rabbits if Utah passes medical marijuana

atomicbeanie
6pts4
hourofcode.com 11y ago

CS Ed Week: Hour of Code Dec 8-14, 2014

atomicbeanie
1pts0

I used to joke that when SO goes under, I will move professions. The joke came from my experience of how many common issues in technology could not be solved with knowledge found via a search engine. I don’t see that niche as gone, so I wonder what is satisfying that requirement such that new questions do not show up at SO?

Yes, I like to call the style Procedural Composition. The key characteristics are no logic with IO, and all system functions are assembled from higher-order middleware functions. This is the way ring, the web framework, and various client libraries like clj-http work. One of the best ways to get familiar with it is to look at the ring libraries.

What this allows one to do is assemble handlers from lots of small higher order functions. It has the downside of one needing to have initialization well organized and thought out. But the fractal-cul-sac as one co-worker has nicknamed it of ever dividing and increasingly specialized functions with IO and logic twisted together is effectively prevented. One can always modify one handler without affecting others or changing how existing functionality works. And it is always testable in small unit tests because the logic is pure.

Systems built in this style can radically reform themselves in a controllable, reliable and consistent way indefinitely. They are immune to the "apogee" phenomena whereby a system gets to the size and fragility where it can no longer be modified without causing unforeseen regressions, triggering the need to rewrite it to move it forward.

This style is for handler-oriented procedural software common in web services etc. It does not apply to embedded state-machine oriented software that operates real-time control etc. That is a different problem space.

Complex solutions are easy. Simple is hard. Often simplicity takes time, iteration and understanding that comes from actually operating a system. I think the missing link here is the Kaizen-oriented refinement that turns complex into simple over time. I find that modern OO-languages frustrate this process by needing cross-cutting changes to refactor for incremental improvements. Expression-oriented languages (like Clojure) are much more fluid, enabling the incremental refactoring required to transform the initially complex and awkward system into the simple and refined scalable system. Unfortunately, just like other languages, it is possible to write difficult-to-change systems in Clojure. And that seems to be often the way it is done.

I don’t wish to be too much of a fly in the ointment. I understand the darkness of dark patterns. But if we wish to not be secretly tracked (which is dark), then isn’t the alternative to openly ask if I want to exchange knowledge of my identity in exchange for the content I seek, so they can target the ads that pay for the content aggregation service I am using? The preceding question mark is not rhetorical. Maybe I am missing something? In the end though, Cat picture or not, the people that provide the service need to get paid.

Any dumbing down of end-to-end encryption will hand Russia and China nuclear powered hacking tools for our economy, infrastructure and digital integrity. With near peer wars ongoing, I would relegate this stuff to a noise filter. The US DoD cannot afford encryption to be dumbed down. And they seem to understand that.

These initiatives will always exist because there will always be people that do not understand what encryption is and what it provides. But lots of smart people understand the consequences would be catastrophic, and rapid. We cannot eliminate dumb politically-motivated ideas.

This narrative points to no proof expecting motive to suffice. I think the US is not the only motive hypothesis. It would have made more sense for the US to blow it up earlier. Given that the pipeline was unused at the time of destruction it seems more likely a Russian intelligence ploy executed from Baltic ports.

I think the Swedish investigation, with no public announcement, might be the only source of primary information. Add to this the sabotage against German trains etc, and the overall lack of ability of the Russian government to negotiate for its interests but instead choose subterfuge (they denied the invasion, and claim themselves the victim), it is more likely such a secret operation is in the interests of the aggressor.

I think the difference here is that static typing gives a poverty of real reliability guarantee's but one must always pay the cost. Since Clojure gives agency back to the programmer, there is a choice here. Clojure for production should check its types at the domain level or as close as possible, be simple, and spare. Personal experiments and tooling can be in a different style. It is just like building anything else, design and construction for maintainability is very different than prototyping or experimenting. Clojure has all the tools required to make robust production software. But it takes the intention and proper decision making to do so.

I had similar feelings, and I get the same feelings looking at today's front end development which looks increasingly like embedded C++ development. I had always tinkered with Lisp but expected it to be forever marginalized given how good Common Lisp was, and how poorly it had been adopted by industry. But Clojure changed that for me. The fun seems to come from agency, the ability to affect outcomes with reasonable amounts of time and energy expended. Agency is the ability to change one's circumstances, and modern tool chain's vast incidental complexity takes such agency away. But restore agency, and fun will follow, I suspect.

Now I don't mean to imply there are not good uses for tool chains like C++'s etc. Only I will say that the disconnection from the end result caused by the long write-debug-ship cycle leads to a certain programmer malaise. The same is true for things like coding chips with Verilog. The production chain is so long with respect to the creative endeavor itself that motivation and satisfaction is hard to get.

So, for me, doing SaaS software, which ships "all the time" with Clojure, has restored my ability to 1) read the std library and most others easily to understand them, 2) Create control, preprocessing and IO primitives myself for special purposes which easily rival standard ones, 3) use interop to access large libraries written in another long lived language (Java), 4) build and use tools that simply introspect the code, producing my own tool additions and automations without AST's, and elaborate tooling, after all, code is just data.

Obviously YMMV. One blog post documented someone who changed from C++ to Clojure and did not find satisfaction. But he was attempting to do something, embedded I believe, that is not well suited to a JVM. So changing to Clojure does involve changing to an area that favors one of the two big Clojure host language machines, JVM or Javascript based environments.

I think fission and nuclear waste are problems that technology can solve. However, the desire of the country to continue to operate old methods and not invest to raise the standards of these processes is like Nevada not so long ago contracting for a coal plant, sadly behind the times. The West does not have extra water to risk. We need new better facilities and investment in nuclear that keeps the environment safe and clean for the country's residents.

And I would offer does not match the experience of those working on web apps with large amounts of at-rest data. Internet connected services are subjected to constantly changing data inputs which break software unexpectedly. The only place to see these data outliers is production. The companies that make this automated, auditable, safe and repeatable win.

I think the case for plant behavior being emergent from a combination of factors not all under its control is easy to call a fact, but it is more challenging a notion to claim that consciousness is for a fact emergent (much as I am inclined to agree).

As for tautology, I am claiming that we are attributing intent (a human characteristic) to an object. I think I used the term correctly. That behaviors of objects should not in general be allowed to be equated with human behavior leading to therefore imply human-like intent. I think this is a good idea in science.

In my case I was trying to forward the idea of these two being at a different scale was a differentiator. And that the ants therefore were better candidates for such human like behavior than a plant.

However a studying biology major set me straight on that and introduced what I think is a better criteria for looking at these systems. She said the underpinning work focused on these colonies establishing communication mechanisms. And while anthropomorphizing systems is frowned upon, in this case that might be an overly strict rule. After all both communication and conscious intent are both associated with humans.

In computer science we fearlessly anthropomorphize with our names (actors, agents, managers). Why that should be not be frowned upon, but disallowed for plants therefore seems less and less obvious. So I think my concerns are unwarranted.

Is this just anthropomorphism of an emergent pattern, of the same nature as cell division and specialization? That a pattern resembles that of an ant colony where its members make billions of neurological real-time decisions which reinforce the perceived structure, these growth patterns are set with few active decisions and do not quickly change even with no active reinforcement.

Hogwash. Sharing data and having it stolen are two different things. Luddites did not account for what their idea of the future would miss out on. The data future offers new opportunities in reality based communication.

Working on serious problems like climate change would be hobbled without the rise of the data economy. But to be an economy it must have rules that protect private, personal and ethically important entities.