That’s what proof-of-work and proof-of-stake are about. I’m saying that the problem has been solved and would need to just be applied to this use case.
I agree with you that use of blockchain on its own is not fully secure, but that can be mitigated for the most part through the same sorts of proof-of-work and proof-of-stake mechanisms and entities that Etherium, etc. use. with adjustments.
This might be exactly the time for Woz and co. to get into this given that there are others handling those problems, right?
In the US, admitting you did something wrong could open you up to a class action suit where some customers could be eligible for damages due to negligence.
You and others assume the merchant is unscrupulous, but they provided a remedy, so when you then called them out on it and gave them bad PR, you’ve given less incentive for other businesses to provide even that.
You could’ve written your post without specifically mentioning the merchant’s name, if your intent were really only to help others.
Even worse, if the merchant were unscrupulous and your aim were revenge, if it were to turn out that the merchant gets more business because of the PR around your stunt, they might tell other unscrupulous merchants that they should not pay their agents and hope for a windfall from rewarding only one of them with their due.
Resource alignment costs:
(Re-)hiring + severance + knowledge lost or transferred to competitors
Refitting and development costs: converting or re-writing code + (re-)training + architectural changes + design changes
Time + impact to other initiatives and maintenance
Don’t stop after costing!
Then listen to the perceived benefits or need again, being careful to communicate and discuss the perceived costs, so that those selling the idea within the company understand, because if they don’t, their good idea will be poor morale fodder later.
This is much quicker and easier than it seems. If you still haven’t convinced the elements within the company to back down on their idea, and you’ve done a good job listening and considering their points, then either those elements are onto something or they’re “on something” (drinking the kool-aid).
In my experience, the main reason these companies fail and especially why acquisitions don’t turn out well is the assumption that the way you do business and the people you have are just successful in their own right and will just take in the new sheep and keep fleecing the larger flock. It doesn’t work like that.
> That said, Common Lisp is weird. What I find particularly jarring is that functions and variables live in different namespaces: if you put a function into a variable, you can’t just use it like a function, you have to funcall it.
Unless I’m misunderstanding, the author sounds like a developer that’s primarily used JS. It’s really not abnormal to have to include parens after a method name in a language, which indicating that you are calling a function.
I like this post but “unscrupulous merchant” seems harsh for a company that may have changed their policies and didn’t realize they had to inform the referring agent of those changes.
It’s not uncommon for policies to change; that initial marketing spiel for bringing agents aboard doesn’t look like a contract.
The reselling agent probably didn’t have a case here, and the merchant went out of their way to assist when presented with a good argument.
So, this is less about the “unscrupulous merchant” and more a warning to businesses to be clear and contractual with your policy and policy changes in order to avoid PR disasters like this.
That’s kind of harsh.
Ruby was a great language and especially great syntax. Except for some duplication of methods and early misspelling of one or two methods, it would’ve been much easier for people to learn and do cool things with that didn’t happen in JS until years later.
Scheme’s not bad, but I think if you compare The uptake of both, Ruby did better? (Not counting Lisp.) It was a cool language though; a lot of problems that would’ve been avoided, if people could type all the braces in correctly... for Lisp at least.
How many operations and objects? The method he’s talking about would seem more efficient for the purpose vs all of the strings still being created even if never used in the plain hash version.
I wish Matz had been there with Rubyscript. JS wasn’t as powerful back then; it took over a decade for it to evolve enough where people would really use it for much other than client-side validation and neat UI tricks. In comparison, Ruby was a great language to use, and it would’ve grown more quickly.
So: total reliance on someone giving something away for free that could break or be taken away at any time and you have no privacy- that’s ok, even if they’re not going to hire you later?
In comparison, here a quote from the OP’s blog entry:
“Fast forward to today. A program to load /usr/share/dict/words into a hash table is 3-5 lines of Perl or Python, depending on how terse you mind being. Looking up a word in this hash table dictionary is a trivial expression, one built into the language. And that's it. Sure, you could come up with some ways to decrease the load time or reduce the memory footprint, but that's icing and likely won't be needed. The basic implementation is so mindlessly trivial that it could be an exercise for the reader in an early chapter of any Python tutorial.
That's progress.”
But is a simpler, less efficient method progress? Sure it allows more words to be added/removed with ease, and I don’t want to advocate over-optimization, but the solution you made for the Spectrum seems better because words don’t change much. Why don’t we use a similar specialized hash and compressed dictionary format to increase spellchecking speed and allow more words in less space? We could still produce that format using /usr/share/dict/words and similar.
“During the breeding, in order to preserve their natural characteristics, the bulls rarely encounter human beings, and if ever, never on foot.
...
Some commentators trace the origins of the fighting bull to wild bulls from the Iberian Peninsula and their use for arena games in the Roman Empire. Although the actual origins are disputed, genetic studies have indicated that the breeding stock have an unusually old genetic pool.
The aggression of the bull has been maintained (or augmented, see above) by selective breeding and has come to be popular among the people of Spain and Portugal and the parts of Latin America where it took root during colonial rule, as well as parts of Southern France, where bullfighting spread during the 19th century.
In May 2010, Spanish scientists cloned the breed for the first time. The calf, named Got, meaning "glass" in Valencian, was cloned from a bull named Vasito and implanted into a Friesian host mother.”
A company I work for spent the majority of their budget and then some on things that they didn’t need, much without any forethought or planning. It’s either because of kickbacks or because it seemed enterprise-y; there’s no rational explanation other than incompetence or corruption. An adequate IT director / CTO would be able to make their case for use of better and cheaper ToC of best-of-class open-source solutions.
Whether it’s kickbacks or just enjoying bragging about the Ferrari of webscalers we just bought or brandname IAAS we use, it’s wrong.
Students today have become quite reliant on Google Docs essentially putting almost all of their classwork out on the web. What if it were to fail? That’s different than it used to be when each student needed to handwrite or type up a paper without SAAS that could break, and those students aren’t prepping to work for Google.