640 karma · joined August 25, 2016
I am torn apart here, because I really do like hacking things. The issue is - most people don't. They just want to use it, and they want to use it consistently - no matter the platform, the client, the server they are connecting to. And I totally understand that. More of it, I also understand that if you fail to provide this consistency your service have failed in the design phase and will never get widespread usage.
The sooner we, tech savvy people, understand that, the sooner we'll be able to deliver a successful open services that actually stand a chance with their closed counterpart.
So obviously, give people way to hack, but you must to:
* Design a rich protocol covering needs of the biggest target possible while allowing optionally disable features. Channels history, disappearing messages, embedded media, text formatting, emoji, stickers, web hooks, API for bots, you name it. The protocol must cover most of them, so there is no need to write scripts anymore, unless you need something niche.
* Design a strict spec for the clients, so all of them must keep to the spec, or they fail to be part of the service. And this is critical - do no allow client to behave differently and have a missing features.
* Design clients so they are trivial to use. They must be usable out of box and all (most) of the features must be enabled after installation. Necessary steps to start using it (connection, channels, etc.) should be reduced to minimum and intuitive.
* Keep a community of server and client developers so they can share info and be able to build uniform solution for the users.
* And probably most important - promote the service. And do promote it heavily, unless you want to design something niche, which, I guess, is not what we are talking here.
I've used IRC for years in the past. It was great, I do admit - not anymore. Today I require at least few formatting options (bold, inline code, block code) and no 3rd party tools needed to get anything else work properly. I have no time to hack things I need to use. I would rather spend my time to hack things I like. IRC is just a tool to communicate, I want to use it, not hack it. I loathe to jump here and there to accomplish tasks that should be done within a second with one click.
The biggest problem I observe with many things in the industry is - made by devs for devs. Never for average Joe. Average Joe have no idea about keeping your session attached so you don't loose nick, logs, etc. Neither he cares about that stuff. And honestly - the older I get, the less time I have for this kind of stuff as well. Just make it work or face the failure.
I think this, at least partially, is the culprit behind being slow. Quality requires time, years of practice, sweat, dedication and experience. And it works really well for craftsmanship. Japan is well known for it's craft, art, cuisine and aesthetics - even in trivial cases like design of manholes or disposable shopping packages. Unfortunately, the same doesn't seem to work for technology, especially for IT. Learn a language/framework today, forget tomorrow, rapidly switch to more efficient solution, keep up with industry standards and everyday learn something new. There's no place for "learn once - master whole life" concept in current enterprise environment. Maybe with exclusion of basic principles. Everything else change on a daily basis. Yet, Japanese web pages tend to look like messy amateur pages on GeoCities 20 years ago and financial institutions wouldn't change for ages (actually, their online pages looks even worse.)
I do disagree about restaurant lines, though. I've yet to see so well organized crowd. And people do know what to order when they reach the counter because in most places they have a menu in their hands long before they get there. And any other lines, on that matter, especially when you compare Western train/metro stations.
https://journals.lww.com/jpgn/Fulltext/2013/12001/Brain_Matu...
I hear that very often, especially from the people diagnosed around 30-15 years ago. I can't get the feeling that this is just an easy excuse to cover inability to find a real cause. I have no study to back it up, just my experience, but I've yet to see a person who has an anxiety just like that. It is an effect, not a cause. You can't treat an effect an just happily ignore the real reason. I am biased by the people I around me, sure, but I would say, very often the cause is being different (even if only slightly) and difficulties to find yourself in the society.
(edit typo)
I tend to have two layers of design, now. One - big picture, which treats services anonymously. Just black boxes that respond to input. The goal here is to build solution like kids are building stuff from building blocks.
Other layer depicts services, as separate beings. They treat all their clients anonymously. They have a contract to fulfill and whomever plays by the rules can be served all right. They should be treated as completely separate projects, have their own backlog, release strategies, etc.
Now, if you would have a product that utilize certain data, would you allow some anonymous guy from the internet tap to it directly? No need to answer, I guess.
Edit: typo
> Since lighting equipment for photography was not fully developed in those days, frosted glass was used for the second-floor windows on the north side of the studio for lighting purposes.
I've been there in the rainy day and even then I'd say light was quite OK. I don't know a lot about photography but it was very interesting to see how people solved these problems back in the day.