I am thinking about doing something similar. Out of curiosity, do you use a reverse proxy web server to protect from malicious attacks ? That`s probably the only part I would think of leaving in the cloud if I were to host my own servers at home.
What's different about a box hanging out in the cloud with open ports, vs at home or in a colo with open ports?
I use CloudFlare to front most of my web stuff for bandwidth diversion - my blog is a purely static Jekyll site, and I've told CF to "cache everything," so if I get hit with a spike of traffic, it isn't hitting my server (much - comments are still locally hosted with a Discourse forum integration, but if that's overloaded it doesn't block page render).
My home bandwidth simply isn't up to hosting. But if I can ever get someone to tap the fiber a quarter mile from my place and give me a drop, I'd move to hosting at home.
Hype, pipe dreams, hokum... I am wondering at what point do these stories become fraud ? Telling stories about your technology that are not true to gain a financial advantage.
The tracers over prototypes advice is a precious one. Having worked for small and large companies, once you have a functional prototype that has been built quickly, managers tend to be very reluctant to let you rewrite the prototype architecture to make it clean. Using tracers you can demonstrate small but important features to the persons involved in the project and when the project will be given the go sign you can work peacefully on the product's architecture.
I had a friend who worked in product design. He says their analog was to never paint prototypes. For some reason, when they demoed painted versions to clients, they assumed they were basically done. It didn't matter how much actual work the design firm still had to do!
I haven't really experienced this, also having worked at both small and large companies. At the small companies, most of the prototypes failed (which is the whole reason you're prototyping) and then the ones that succeeded usually got rewritten because everything got rewritten multiple times. At the large ones, the prototype exists to convince a VP that this avenue is worth pursuing, and then typically it's handed off to another team to actually do.
Could also be because I've basically always had technical management, and the projects I work on tend to be fairly technical in nature (i.e. "can we do this?", not "the customer wants this by Monday").
That might be the reason but it really depends on company culture, funding, and other aspects. I built an early prototype for our product in the first two months. Losing two months wasn't an option for a rewrite. Even if I could get it done in a month, it just didn't make sense. The prototype was "good enough" to the point where it stuck.
I'm unfamiliar with the "Tracer" concept. Can you provide an example of one of these you've built?
I'm specifically curious how it differs from a prototype... is it just a prototype of 1 feature in isolation with bare-bones design? Or some feature that is only triggered from an arcane terminal command?
Just chiming in here: in The Pragmatic Programmer it's called a "tracer bullet", not a "tracer". You'll do a lot better searching for discussions by using "tracer bullet".
The initial questions to build your pitch that are enumerated in that article are also good questions to ask yourself if you should pursue or not with your company.
Some of these cases are not only dark patterns, they constitute was it legally known as fraud. If you deceive someone in order to gain a financial advantage, it is fraud. The problem is that going against those gigantic companies is very difficult.
And then others aren't dark patterns. One of the first examples, British Airways, is pretty unfairly called out.
The article says that they imply "cheapest at the top". No, the flights aren't shown "cheapest at the top", and they never imply they are. They're sorted in chronological order.
There is a summary item that says the lowest fare for a booking class that day, but that's all.
" British Airways lists flights that are the second-lowest price as the lowest,"
That sentence makes it sound like they deliberately always put the 2nd lowest price as the lowest every time. It was pretty misleading or poorly written.
I think that's still really stretching. "In fact, it's only the lowest price in that ticket class".
If I saw those boxes across the board, like in their example image, it doesn't take a second thought, it's "obvious" (to me anyway), that those are the "lowest, per class".
Yeah, that's why I described it as an examples of a bad design choice that may be accidental rather than a dark pattern. I do still think it's misleading, though.
The first thing that came to my mind was... what about advertising on the web ? This is an area where machine learning and algorithmic decision-making use discrimination to either show or not an ad to a particular user. There are millions decision made everyday. Under that regulation, could you ask for the reason an ad was shown to you ?
Nope, because advertisement doesn't "significantly affect" you. At least that's how it's meant and how it will be understood. This is about credit, employment, insurance, medical care etc.
Medical care?! Oh God. Well, I suppose the AMA will keep the US from embracing machine learning so it's not like this is actually a chance for the US to reverse its lag in mortality statistics.
Although just like the things you list, I can think of a plethora of ways with which advertising can literally, indirectly change my life by convincing me to purchase a product or service.
Actually, it might go up quickly once they start filling up their financial results every 3 months. If they have a steady growth the market will react positively and the employees owning shares will benefit from it.
I fully agree. When working on a team, you have to think about the future not only the current moment. If every time you have a disagreement it results in a win-lose situation I can guarantee you the mood among the your team will go down quite rapidly. I would suggest 'Getting to yes' by Bruce Patton, Roger Fisher, and William Ury on this matter of negotiation.
But this is one of the things that the article sets out to define! That the work process should not be driven individual competitive arguing (which is pretty much the default mode of interaction for male technical staff), but people need to think about whether the arguments that they find themselves having are worth it for themselves and for the team.
"Conversely, there are several different conditions that constitute “losing.” The team can lose if you make a teammate feel like their contributions aren’t valuable. The product itself can also lose by missing out on early critique of its features, or by missing an opportunity to have its features developed less expensively."
I don't know this book - thanks for the advice. I would recommend "How to win friends and influence people", which gives also good advice and a lot of hints.