I personally could never get very exited about AR apps that simply insert digital objects in the real world. Using AR to modify the world though opens up a lot of possibilities and I've been throughly impressed with how well ARKit can pull this effect off too. It even works great on the five year old iPhone 6s.
Give the app a try and let me know if you have any feedback/questions
Yes, at the moment only Linux is supported for the server. But please upvote the relevant issues so we know which other platforms people are most interested in running Code server on: https://github.com/Microsoft/vscode-remote-release/issues/24
If you have questions about the technical details of the project, I'd be happy to try answering them. It's been fun to use this retro tech in a really impractical way, and being able to see individual bits of data is neat.
I like the concept of attacks that are successful not because they are effective but because they preoccupy the target and waste disproportionate amounts of time trying to defend against. Time Sink Attacks (or TSA if you will)
Have any companies in the market been successful going the premium route? A service that costs a lot but is designed for the best user experience and outcomes? Maybe they interview potential members in person and work to ensure the “marketplace” has a good balance. Or maybe they take a more active role in the pairing. Starts sounding like a matchmaker.
For a dating service company not to be overly incentivized to keep users swiping forever, a membership model like with a country club could also work: a large upfront fee to join and then maybe a smaller reoccurring fee to maintain membership.
Timequake is also a great one if you've enjoyed his other work
I taught how to be sociable with ink on paper. I told
my students that when they were writing they should be
good dates on blind dates, should show strangers good
times. Alternatively, they should run really nice
whorehouses, come one, come all, although they were in
fact working in perfect solitude. I said I expected
them to do this with nothing but idiosyncratic
arrangements in horizontal lines of twenty-six phonetic
symbols, ten numbers, and maybe eight punctuation
marks, because it wasn't anything that hadn't been done
before.
— Timequake by Kurt Vonnegut
I work on VS Code. You can disable VS Code telemetry and even disable all built-in online services if you like. This is documented on the website [1]
However VS Code cannot block the extensions that you install from collecting their own telemetry. Even if use a version of VS Code built from source, an extension that you install could still collect telemetry of its own. Same applies to most software that allows third party plugins (unless they do some serious sandboxing/capability restriction, or only allow installing specifically vetted plugins)
Everyone's a content creator these days. Even your uncle is posting pictures of his meals and writing about how #blessed he is. And you know, while that's not my cup of tea, there's nothing inherently wrong about that. It's great even, so long as it's authentic. But it usually doesn't strike me that way; it usually feels more like they've become a social media coordinator, sharing—and selling—a fake version of themselves to you. He's become a brand
If you were to stumble across Uncle Brand's online presence, you'd likely be amazed with what an interesting and humble and cultured and well traveled person Uncle Brand is. And is that so wrong? He's only creating what he's seen other people do after all. Only giving you what you want. Why not put your best self out there?
And maybe Uncle Brand has a little something unique he does, that one emoji he always uses or that obsession with ramen. And maybe he starts attracting an audience. He's reliable! He's relatable! He's authentic! He's safe!
But an audience is something you have to maintain, something you have to grow. The audience didn't come for Uncle Brand the man; they came for Uncle Brand the brand. So he starts refining his brand, churning out more content, gets a better camera for his photos. He's got more resources now and can ape what big brands do.
In some ways, the internet became too real, too tied to the real world. You can even make real money on the ol' www! But when this happened, rather than the internet liberating us from the old, we just recreated the old incentives and shallowness and commercialism. But shittier and more random. Youtube celebrities are mostly just shittier celebrities. Instagram is mostly just shittier magazine and food and travel photography. Internet journalism is mostly just shittier journalism. So much online content is pre-internet content just pushed on a new channel.
And what's so wrong with getting real? Uncle Brand is all in. He's a souper star! The Martha Stewart of ramen. By now, Uncle Brand is using his brand to hawk stuff too. He's using his brand to hawk other people's brands. Promote, promote, promote. Sell, sell, sell.
The internet defies generalization. There are certainly great communities and forums and subcultures and people creating amazing stuff out there today. More than ever even. But the internet as many people experience today is indeed quite different from what I original loved. It feels like all the incentives are wrong; platform incentives resold to creators and users as their own.
I don't want to be a brand. I don't want what old world is selling: the celebrities, the popularity contests, the consumption, the fear of judgement. I just want to create awesome stuff and have fun and try something new. And I want connect with people who are doing the same!
I’d really like to use git repos for fiction; use commits and forks and merges to tell a story that is far larger than any snapshot of the repo’s content. This could be as simple as creating a fictional creative process for some work, or as complex as an entire fictional community collaborating on a document
Over the past five years, I've sort of reinvented myself though side projects all while staying quite professionally productive. I wrote a little about my project process almost a year ago and thought I'd repost it here in case any one else finds it helpful:
---
(From early 2018 [1])
My driving force is to create things and that directs how I go about personal projects. I don't have much in the way of an official process, but the typical project cycle goes something like:
1. Start with any idea or question that is most interesting to me right now, for example: converting audio propaganda to waveforms.
I usually try to align the project with some longer term personal goal. One of my current longer term goals for example is to start a business. To do that, I want to become better at selling things. Therefore, my current medium term project is to try selling letterpress prints of the waveforms from propaganda.
2. Research the idea, start learning required skills, and begin prototyping. Often—as in the letterpress project—I go in with no idea what I am doing. I always try to keep my specific goal in mind and make sure I am delivering something, either as learning or as actual prototypes. I'm also trying to become better at collaborating with other people on this and outsourcing the work here (which is itself another longer term goal)
This stage usually spawns a number of new ideas that I add to a personal backlog. If one of these is more interesting than what I am currently working on, I change the project's focus or abandon it altogether.
3. Polish, release, and share. If the project is still interesting, continue iterating. Otherwise, go back to step 1 and repeat.
I try to keep this cycle short but that isn't always practical, so I compensate by having multiple project going on at the same time. These roughly fall into a few different timescales: one-off (a few hours in one go), short (1 or 2 weeks freetime), medium (a month or so with interruptions), and long (3 months+ of very off-and-on work).
This process has let me create, explore, and learn quite a bit without getting burned out. It has also taken me in directions I never expected.
I don't know any of this would work more broadly. Again, my driving force is to just to create things. I'm operating in a bit of a vacuum with no real audience in mind or much in the way of external pressures.
---
Main takeaways:
- Side projects should be for you.
- Mix short and long term deliverables and goals.
- Have variety and continually iterate to avoid burn out.
Since writing the above in early 2018, I actually did learn letterpress in order to complete the propaganda waveform project[2], which itself led to me traveling to Switzerland for a letterpress poster design class, which led to all sorts of adventures in Switzerland and Italy and tons of new project ideas. I'm also continuing to explore selling more (including selling printed posters)
Again, this general mode of working has let me explore a large number of side projects while doing good work in my day job. There is really nothing special to it. However side projects have been incredibly important to me and I hope these points may be useful to someone else too
I maintain a few open source projects that many developers use (along with many more projects that no one uses) and I get like one PR a month. It seems like some developer’s entire workflows depend on some of the tools and libs I maintain, but I don’t even use the damn things myself.
That seems like the perfect case for self interest: make this thing you use all the time work better for you. The code is usually fairly clean and the contribution process documented. And yet all the help wanted issues just sit there.
How have other maintainers been able to encourage more valuable community contributions?
What do you recommend as an alternative? I prefer the phrasing, “what matters to you” or “what are you currently excited about”, but it’s the same basic thing.
I like being asked such questions because they let me guide the conversation and decide how much I want to disclose, which is the reverse of how many people here interpret these questions. Beats getting stuck in a shallow conversation that neither party really cares about. You have to actually be interested though and open for any response. I’ve had great conversations about everything from Warcraft to politics to medical school just by being interested in what the other person is saying
I’ve written tooling to support lit-html and styled-components in editors. Template strings are sort of nice to write but complete pain to support in editors. They are just like a macro language, so you end up with stuff like: `<${tag}>...<${tag}${slash}>` which is not possible in jsx. Even just detecting syntax errors is a pain
Obviously if deciding between making life easy for editor implementers or making life easier for coders, the coders win, but if something is unnecessarily difficult to build good tooling for, that’s a sign of poor design in my book. And coders will ultimately suffer too because their tooling will suck and because their code will make use of all the crazy flexibility the library allows.
This generalization is very misleading. Many national parks are massive, with vast tracts that can only be reached by days of hiking or an off road vehicle or an aircraft. This is true even of extremely popular parks like the Grand Canyon, Yosemite, Zion, Joshua tree, Smokey Mountains, and Denali.
The Yosemite valley in summer for example can feel like Disney in terms of crowds, but that is just a small area of the park’s land. The entire eastern part of the park is far less busy even along the roads, there are plenty of remote trails for backpacking, and then there are true wild spaces without any official development.
The national parks offer a range of natural experiences that can suit almost everyone.
I had no connection to the community but found reading this oddly fascinating. An online community’s last few hours is a really interesting storytelling device
Very good points. Just to add a few more details on the LSP and VS Code side of things:
- VS Code implements syntax-aware code folding using the LSP. This means that folding is super flexible but it is also makes computing folds fairly expensive. And every time the document changes, the language server has to re-compute and update the folds. In almost all cases, language servers is just generating folds based on the document's syntax anyways.
Tree-sitter is interesting because it lets folding and other syntax based language features be calculated accurately and quickly on the client, freeing up the language server to do more interesting things (or just go to sleep for a moment). Document outlines are similar; VS Code uses the LSP for this but in many cases the same syntax derived outline could be generated by tree-sitter.
- The LSP probably isn't well suited to general syntax highlighting due to computation cost and communication chattiness concerns, but the LSP may eventually support semantic syntax highlighting [1]. This could, for example, allow an editor to color all singletons hotpink, which requires a semantic understanding of the code. Semantic highlighting would augment the base highlighting provided by tree-sitter or by a TextMate grammar.
I'm the developer of VS Code's JavaScript/TypeScript and Markdown support, and am interested in tree-sitter if only in the hope the it will free us from TextMate grammars. If you want to see just how far regular expressions can be pushed, just go browsing through some of these bad boys; TypeScript's is a classic [2].
Looking for a marketing expert to help promote our unique iOS AR apps: https://apps.apple.com/us/developer/matt-bierner/id132880539...
Super early stage company so we are looking for someone who can both come up with marketing strategies and then implement them
Contact: mattbierner at gmail