HNHacker News
TopNewBestAskShowJobs

mattbierner

895 karma · joined August 1, 2014

https://mattbierner.com
submissionscomments
mattbierner··on Ask HN: Freelancer? Seeking freelancer? (June 2021)
SEEKING FREELANCER | Remote | Part time | Marketing

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

mattbierner··on Show HN: Beatsy – An augmented reality music visualizer for iOS
This post (and the linked project from it) covers how I use ARKit to make it look like the real world is being distorted by music: https://blog.mattbierner.com/reality-shaders/

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

mattbierner··on Remote-Powered Developer Tools
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
mattbierner··on Printing the human genome on punched tape
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'll also be live streaming the printing off and on: http://twitch.tv/mattbierner

mattbierner··on Woven silk prayer book created with punch cards on Jacquard loom
More complete images of the book content: http://www.thedigitalwalters.org/Data/WaltersManuscripts/htm...
mattbierner··on WWII Dead Rat Bomb
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)
mattbierner··on The Dating Brokers: An autopsy of online love
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.

mattbierner··on How Peter Jackson Made WWI Footage Seem Astonishingly New
Royals start wars; commoners fight them and bear their hardships

(A point exemplified by World War One)

mattbierner··on Vonnegut’s Asterisk (2013)
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
mattbierner··on The Rise of Microsoft Visual Studio Code
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)

[1]: https://code.visualstudio.com/docs/supporting/faq#_how-to-di...

mattbierner··on Searching the Creative Internet
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!

mattbierner··on Hyperliterature
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
mattbierner··on How to balance full-time work with creative projects
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

[1]: https://github.com/mattbierner/blog.mattbierner.com/issues/1...

[2]: https://blog.mattbierner.com/anwar-wave/

mattbierner··on Open Source is Not About You
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?

mattbierner··on How to Talk to People, According to Terry Gross
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

mattbierner··on Hyperscript Tagged Markup: JSX alternative using standard tagged templates
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.

mattbierner··on All U.S. National Parks Are Free to Enter on Sunday
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.

mattbierner··on Last night of the SFRTs
This is from last day of GEnie’s Science Fiction RoundTable. The service was shut down in 1999: https://en.m.wikipedia.org/wiki/GEnie

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

mattbierner··on Twitter’s Problem Isn’t the Like Button
Twitter is like 12 years old and has somewhere over 300 million users. It has been public for five years.

Whatever it may be, it is not pets.com

mattbierner··on Atom understands your code better than ever before
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].

Keep up the great work Max!

[1]: https://github.com/Microsoft/language-server-protocol/issues...

[2]: https://github.com/Microsoft/TypeScript-TmLanguage/blob/16c5...

mattbierner··on Fear, trust and JavaScript: When types and functional programming fail
I’m sorry that I commented on this article. Knew it was a trap. I’ve been writing functional-style for a long time and just wanted to share a bit of what I’ve learned.

Use whatever tools work for you, but also don’t disparage or dismiss other tools because they have different strengths and weaknesses than what you know or appreciate. There is no need for proselytizing; these are just tools after all!

I like JavaScript and TypeScript because they have let me quickly build many great things and share them with people. I also subjectivity find writing in them to be enjoyable. I may always turn to a different language if it is more productive and enjoyable than js/ts for the task at hand.

mattbierner··on Fear, trust and JavaScript: When types and functional programming fail
Documentation and/or a type checker. Jsdocs are both documentation for programmers and can be enforced using tooling like the closure compiler or typescript

JavaScript is no different from most other dynamic languages this way

mattbierner··on Fear, trust and JavaScript: When types and functional programming fail
No it doesn't.

This may not be a popular opinion for those coming from C or Java, but runtime type checks in JavaScript are usually an anti-pattern. If my function defines a contract that the caller violates by passing in null or undefined, then my function should raise an exception when it tries to access `undefined.xyz` or whatever. Otherwise, embrace the duck! If the function can work with what it was given, it should instead of trying to enforce some Java-esque type system at runtime using typeof or instanceof.

But be pragmatic. If there is some critical area of your app that absolutely must never ever throw, typecheck away (although this is JS after all, so it still may throw if it damn well pleases).

mattbierner··on Ask HN: What are you working on and why is it cool?
I’m using an old paper tape punch machine to print out (5% of) the human genome. The punches are from the early 80s, and it’s really neat to be able to physically see each bit of data. The plan is to fill up a room with the punched tape, sort of mirroring a strand of dna and giving you a sense of just how large the genome actually is.

Unfortunately I’m having a hell of a time finding space to print in. May just end up finding some commercial warehouse space on Craigslist

mattbierner··on A guide to rhythm in web typography
When I took a typography and poster design class in Switzerland this past August, the advice about justification was the opposite: always use justification as a reasonable default that machines can handle and only use ragged right if you have the time to adjust each line by hand. Proper ragged right text should alternate long and short lines in a specific way that algorithms can't handle (deciding if/how to break up words and lines, perhaps even modifying the content to fit). This was coming from Lars Müller and typographers with decades of experience so I'm inclined to trust them, but the alternating ragged lines still looks a bit unnatural at first if you are used to MS Word style text alignment. Once you see it done properly though it's hard to miss when it's done poorly.

Their advice was for physical media while typesetting for the web is clearly a different beast. Trying to emulate print media is a great way to create a poor online experience.

mattbierner··on Giant Claw enters the Dark Web – Internet culture and layers of reality (2014)
Orange Milk has been publishing some of the most interesting music of the past few years. Oneohtrix Point Never is much more well known and uses some similar sampling and sound techniques, but Giant Claw and others under Orange Milk Records bring a unique internet aesthetic that is truly relevant
mattbierner··on Invisible Manipulation: ways our data is being used against us
Instead of trying to prevent data collection, what if we made simple tools that let anyone make their data less useful: data pollution or telemetry vandalism if you will. Either generate a bunch of noise or try exploiting analysis such that a machine would not be able to tell real from fake.

Simple example: instead of an ad blocker, everyone runs a script that “clicks” on every single ad they see

mattbierner··on Chances DNA can be used to find your family? Sixty percent and rising
For various reasons I don’t know my full genetic background, yet I have always known my family: it’s the people who raised me. I would never consider a genetically related stranger to be family, nor would I be interested in getting to know them.

Always be your children’s true family and help them build a conception of themselves and where they come from that far transcends genetics. Their creation shows that they were truly wanted and was just the first expression you and your wife’s pure love for them

mattbierner··on The Presidential Text Alert Has a Long, Strange History
Some additional information about PERKI: http://web.archive.org/web/20060401172542/http://www.geociti...

(also, "HFR till end of the world confirmed" is amazing. Must add that sort of thing to a software project sometime)

mattbierner··on An artwork by Banksy shredded itself after selling for $1.3M at Sotheby’s
This piece was excellently executed but shredding may not have been the best way to make that point (even if it is a good laugh). A few quick thoughts on how this idea could be modified if the goal is to poke at the art market:

- Destroy the original completely. This would be difficult as even ashes from burning could be resold and exhibited. I’m also not sure destruction captures the right point.

- Reverse the shredder idea to instead have a photocopier in the frame. Have the copier spit out “originals” on demand and reveal that there is no actual original piece.

- Have money literally effect the art (or have the money become the art). Like fill the air gap in the frame with dollar bills upon purchase or something super in your face like that.

- Reveal new information about the piece or about the artist that makes owning the piece horribly distasteful.

- Physically print a giant photo of the new owner’s face over the art when the auction completes.

- Have the artwork be a complete pain to exhibit or care for. Maybe it comes with a button that has to be pressed every 108 minutes or else the price gets shredded (sadly this would almost certainly result in some guy getting paid almost nothing to sit about and press the button for years)

Banksy is always a bit too smirky for me, however I can’t complain too much as this armchair is really quite comfortable.

Page 1 of 6Next →