HN user

mpdehaan2

2,424 karma

Previously created Ansible, among other things.

Posts7
Comments573
View on HN

North Carolina person here and yes, all of that going to mexico/elsewhere did lower the quality of everything, as well as the expectation that furniture should be cheap. Highpoint now has a furniture market without much production.

Since people here probably have the means, sharing some tips - If you want good solid-wood hand-built furniture in the US, a couple suggestions might be https://roomandboard.com/ - which is a frontend on a lot of small makers and has extremely good delivery fees, or finding a local (perhaps modern) furniture store that deals with smaller USA-made companies (like American Leather is pretty good for couches/chairs or Copeland for case goods). Regardless of what you do, often there's a bit of an ordering delay - sometimes up to 3-6 months, but it's always worth it than the obvious online options.

You may also have some nearby stores that sell Amish-made wooden furniture, particular in terms of kitchen tables and casegoods, and the quality is usually exceptional.

But yeah, stop ordering cheap MDF-stuff and then maybe factories will start producing good stuff in volume again, for a slightly higher price. Maybe.

Yeah you are absolutely not alone. I was lucky enough to have a startup make it about seven years ago. I do not think I could do it in today's environment AT ALL and also don't know how to use any of my past 'success' to repeat something. Starting from 'not that' would be infinitely harder, that's not fair for anyone, and that sucks.

I completely agree with the whole problem of how social media and tech 'influencers' have ruined the ability to get ideas out there. I also think that the zeitgeist of what is possible and popular today is very limited, and made worse by many end-users being burnout and uncurious.

This website glamorizes startups and should not. It's not a golden path for most anyone. It makes people think it's remotely easy, and it's 99.999% chance for most good people that are well rounded enough with a great idea and 99.999% rich people connections for everyone else.

It requires (potentially) a ton of life force energy expenditure - if you're an honest person - that can potentially, quite literally, kill you. If you aren't honest you might make it in whatever grift, and wouldn't have as hard of time being around people that you aren't ethically compatible with.

I can see without a platform to launch exactly the right idea without the absolute perfect timing how much harder or nearly impossible this would be. Those platforms are not really available to people who don't know "the right people" and act appropriately greasy and self-important these days, IMHO, so there's even more of a luck coefficient than there was 10 years ago.

I want to say "happy thoughts" but we really need smaller communication paths, more diversity of tech approaches and alternative methods, and more funding that attempts to create stable profitable businesses and not unicorns. We need twitter to die so tech influencing stops being a thing that gets followers, and instead projects and ideas get that attention (and participation) instead. Even then, I'm not sure it's going to be "fixed".

Right now, surely though, it does create some terribly bloated technology.

I don't post here much because I tend to hate the comments. When someone has shared a blog where I referenced mental health once, I was called out for it as "one of those people" and that's messed up.

Yes, tons of people go through this feeling and you never know because they don't talk about it.

In addition to info above - I'd share the following. You don't need these things to be better, necessarily, and anxiety will create traps to overemphasize the feelings of importance you have (and frequency) about certain thoughts. Comparison is also a source of dissatisfaction.

I would recommend talking with someone who can explain the traps of magical thinking and explain some resiliency techniques, as well as researching this on your own (i.e. CBT) but also looking pretty seriously into mindfulness and some of the core concepts that got built up around Buddhism.

People think of it as a religion but it's basically 2000 years of practice built up around mental health and understanding why people are unhappy and how to change that, and it solves it just by changing perspectives about thinking. Ignore the religious parts and it's still just as solid. Once you start to experience greater space between thoughts and understand some of the concepts about attachment to ideas and wants, and can minimize the concepts of "self", you can have a completely new perspective.

Anxiety will create a way to show you that you need things and you can't get to the things you have, and you don't really need those things (you can still get them) and the stories aren't necessarily true.

One of the dangers of programming is it teaches you to predict failure/disaster, and I think some of this thinking is an occupational hazard (running startups more so!) where you think you can anticipate how the future will work out and try to prevent "outages" of sorts, and this is something you have to avoid.

We tend to value thinking and the idea that thinking solves all of our problems, but the foreground thinking we do is not the most accurate and best parts of our minds, and takes us out from observing the things around us.

Finally, depression is technically a disease that has a bit of a feedback loop in it. It's difficult to reason in that situation. Don't make yourself try and don't worry about having timetables.

I also recommend the exercise suggestion and having some easy regular things to look forward to, even if it's just a couple of classes at the gym. Even that kind of socialization is often enough.

On the entrepreneurship question, I didn't have those skills either and still did ok -- that's just you probably wanting to be authentic and not fake. But making it isn't all you think either. Lots of people with a lot of wealth and success can still be unhappy, people with wives and kids can still be depressed.

Hence I think really diving into the mindfulness aspects and trusting in neuroplasticity is transformative - things can get better, even if they only get 1% better every day along some sort of Xeno's paradox curve, they are still getting better.

Even some basic supplement changes can make a big difference - vitamin D, adoptogens, etc. Rather than treating it like an experiment where you want to find one solution, it's reasonable to try a lot of things to make changes at once.

Another analog is burnout is kind of a form of brain damage (that can manifest about worrying about other things) - it takes a long time to recover from, so give yourself some credit and empathesize with having whatever issues, but realize they are also not "you".

I am probably the most commercially successful user of the multiprocessing module :)

It's basically fine anywhere you need a function call that you can dispatch out to like 50 or 500 workers on a queue and then do something after that returns, but any shared memory or IPC between the workers is up to you.

Python is also fine for webserving because most web servers pre-fork workers or whatever, so this doesn't come into play there either.

It's harder if you want to do something different where you want threaded workflows with synchronized/protected like constructs that folks might be familiar with from say Java.

Firing up multiprocessing (forking) has some costs to bringing up the interpreters so it's not something you want to start up a lot and then close down a lot, better if you can start things and leave them running. Once it's up it is pretty fast.

I guess mainly it changes the style of your program too much - it's basically just glue around forks.

I could write a few pages here and hope maybe they can help someone.

Leaving the industry has been a hard adjustment (years) - but folks can get through it. I've been thinking about this a lot, so here goes.

Ok, so, my theory is that when leaving a profession our brains have been hardwired for being really good at to the point where we dream about code - it's likely a large number of our brain cells don't know what to do with each other. Yet, if you get successful enough, you may also decide that you hate all the corporate drudgery and politics, and the reward of success is getting out, so you're out. And you have to adapt.

It's important to remember why you left. Yes, remember those bad things. There is a reason you aren't there.

But how to do you fill in and appease all those brain cells still grabbing on to the desire they want to do this thing, this thing that, especially when you were just starting, you really loved?

Can you still program for fun? Yes ... but you'll miss many levels of social interaction, especially if you had a really big thing before. You have to be able to enjoy building things that people don't see or appreciate. This is very hard. You may struggle from not having the user interactions or interactions with other developers you worked with. After starting many things that you can't get an audience for, this can become pretty isolating.

It does help to cultivate a degree of mindfulness - and ability to reframe negative thinking - and of course to cultivate hobbies. Everyone can do that now. But I would look at it not as a quest for "what's next" or a repeated success as this may be frustrating, but a chance for reinventing yourself (slowly) and enjoying various things in life with a bit more attention and interest.

Maybe the addiction to the success was the problem. Maybe there's something about the Buddhist definition of "attachment".

Still, I want to fix this - though I'm not working to anymore. I feel we feel the promise of open source in corporate settings but really the whole "anybody can make something and get lots of users to have fun with" isn't true really. There's too much noise. There is lost opportunity. In trying to do programming for fun, I ended up questioning all of my religion about open source communities. A weird experience.

It's not really as real as I thought.

We could fix this by making ways for people to discover projects around really niche interests - smaller forums, not sites that scroll by in a minutes.

But I think success in adapting here is by letting those parts go and realizing you can reinvent yourself. If someday they want to code something different, they won't have the same inclinations and it will be more like when I wrote my very first programs - there was almost no one to show them to, but it was still fun.

My advice I think is to be ok with letting that software part of your brain atrophy, because those pathways are likely attached to a lot of other things, and they are going to ... fight.

There's a few people I've encountered where stockbrokers became potters or whatever. I don't really know if I want to do that. But I also know if I'm looking, I kind of feel desperate or something, and it's better to not be.

I could start another company, but I want to avoid the whole VC game - and it's difficult finding people that have lots of time that CAN work for free, but I also know the huge opportunity cost - and once successful, it might create the thing I was happy to escape from. Do I even want to spend that many hours in front of a computer?

It's a process. (twitter DM info in profile if useful)

no videos at this time, there are source codes all the tracks in git (linked below the soundcloud player on the homepage) - and that should give an overview. Basically I'd be talking through the source code. If you go up one directory, you'll hit "api/examples" which is more functonal (but less song-like) demos of particular features.

Basically the API is "step 1" to building the final sequencer, but we always want to have the API available for the generative music crowd (and also our own use). Conceptually I think this would be really great to build an ear training program out of, because it's so easy to tell it to generate a ton of chords, scales, and intervals. Maybe that will come later too.

Anyway, video is still something on my radar!

Not sure if that is exactly the answer, but frustration with sheet music is kind of why guitar tab also exists... except I don't play guitar.

The Roman numeral analysis is somewhat related to https://en.wikipedia.org/wiki/Nashville_Number_System

If you really want to read things faster than key signatures, there are a bunch of music books you can buy where everything is transcribed to C.

Anyway, that's kind of all the point of just typing in the scale degrees in Warp... not having to worry about what notes are in what scale, and being able to quickly "draw" out the pattern, which is problematic in most DAWs.

I completely concur with Western music theory being crazy.

I would love to be raised by aliens where music was cleanly lined up with decimals or base negative three integers or ... anything.

There's all the string vibration stuff that leads to 4ths and 5ths though, which as I think fundamental to how we got here, but even little things, like "starting at C" for octaves... it's all weird :)

The "whole whole half" thing is a mess, and then you get semitones and notes that are missing on the keyboard, etc. Fun times!

to add to the above, on OS X, instead of loop MIDI, you can create a Virtual IAC bus instead. For someone with a Windows machine that has loopMIDI, if you want to send me a patch for Windows setup instructions, I'd love to add them.

I mostly develop on a Mac myself.

There are also some soft synths that don't need a VST host, some mentioned here - https://blog.landr.com/the-7-best-free-synth-vst-plugins/

I will admit I haven't used the setup.py having copied it from a previous project, and that's a stupid shortcut to make... I'll take a look at take care of the space issue.

Those sequencers do not include Ableton, the Monomachine, Bitwig, Logic, or any that I have experience with. They all use force to scale mechanics that make accidentals impossible.

I suspect Numerology might. I've only seen semitone transpose in most arp implementations, never the ability to work within scale notes. I've never seen an arp that can walk across chords and probabilistically invert them.

The Cirklon had a lot of great ideas including some things like random step transpositions and variables - but generally, in DAWs, it's not something you have access to. Nobody's even tried to get something like Electron parameter locks going, which is a shame, because they are awesome.

I don't have enough karma or levels or superpowers to down vote anyone. I have no idea how this website works in that regard.

Nope! With those systems you have no way to input accidentals. Here, notes are entered in scale degree, so if you say "4 5 6" you get the 4th, 5th, and 6th scale note, every time. If you later want to transpose to Eb Pentatonic, everything remains musical. The arp can also tranpose by scale notes instead of just semitones too.

Also, there's quite a bit more, all in the docs. There's a ton more there.

Yep, that's true. For now there isn't a user interface and doing some youtubes about the API is definitely planned. the API will remain around forever though, and is useful for generative composition today.

Do a checkout and you can see quite a few song files in the examples dir which should be helpful in getting a feel for it. UI should be out in a few months and will be more photogenic for youtube and will also ship with some demo tracks showing how all of the patterns work.

Hi everyone,

I've been making music with synthesizers for a long time, and I always saw great ideas in DAW tools and in hardware, but never all of those ideas in one place. I wanted more music theory awareness in my compositional tools, like the ability to access easy scale changes. I wanted patterns to be symlinks, and to make it easy to have multiple patterns in a single clip.

I wrote Warp to make it happen. Today there's a Python API that can make full songs, and the work on the UI is getting started, which will be available this Fall.

The Python API doesn't technically even require using a loop, so it should be accessible to programmers who aren't Python experts.

Let me know if there are questions, and if you'd like updates, you can also follow @warpseq on twitter.

Hi folks, I'm Michael DeHaan, and you may remember me from making Ansible.

I know there are a lot of doc frameworks out there but I wanted an easier one, one that allowed me to use HTML and template things with Jinja2, but mostly stay out of my way.

This one requires no RST, no Markdown, and still supports custom themes. Syntax highlighting with Prism.js is built in, and accessed with some Jinja2 macros.

I have at least two projects to write docs for using RockChisel in the next few months, so this is going to get a lot of use. Definitely could use some CSS help, new ideas, and all of that, so if you are interested, stop by the community page on the docs for how to get involved.

First off, it sounds like your playbooks sucked - sorry about that, with great power comes great responsibility. Even as I wanted to make things simple, all things could be abused, and in adding more flexibility I've seen some evil things done in my name :)

So as immutable systems grow - that's a damn good thing. I personally think the docker ecosystem is a trainwreck currently, but that's only my opinion, and doesn't really affect anyone else. But the same concepts have been around for ages in EC2 in immutable systems.

What typically happens is people use the CM tool to provide a higher level abstraction than Bash for describing the image build, so they get features that should have always been in docker files but never were (templates are the biggest one for me).

Further, there is always a need to deploy the "undercloud". Even in heavily containerized microservices setups, there's a need to handle all the magic upgrade fun of upgrading a Mongo cluster, a Cassandra cluster, or a Kafka setup.

Whether we call it configuration management, app deployment, or just a structured way to push scripts around and see what failed, we're going to need those tools.

I believe immutable systems is a fantastic philosophy where it works. It doesn't work everywhere. And CM tools still have a niche for those that want to use them in the build process.

If folks want straight docker files instead, I'm also cool with that.

It's ok if you think of it as such, the veneer over that actually isn't that deep, and that's ok.

The trick is there are some norms you want to express in the language, things like handlers and such, and if you write directly at low level python every time that can be sometimes difficult to maintain a level of consistency (IMHO).

Here's where it's NOT just a collection of python classes - https://sweetness.hmmz.org/2018-12-18-mitogen-opsmop.html

Valid point. I started this about a month ago, and as APIs were evolving I did not want to slow my velocity by having the tests fight against shifting it around.

I suspect the first release will be in about Feburary, but the time to collaborate on working on it is now.

It is designed to be fairly testable, but if you've ever written a similar system, you know that distributed testing of modules on a matrix of 12 platforms IS a trainwreck.

Any units would mostly be proving out the language.

The best way to do that is with a specialized callback, that shares the event stack, and we can then introspect that the events happened in the correct order.

As the callbacks have been changing too much now, writing a boatloat of tests would have been a mistake.

At this point, I'm most interested in feedback on language features, and these will come.

It was an absolute mistake that ansible itself was not more testable at a mock level, a problem made a lot better now by everything being done in one process.

Ansible had the ability to write modules in any language, but this was never really used in practice.

I'm a big fan of the Chef people and they are good folks. Habitat is about a way to distribute applications to remote nodes and is somewhat an alternative to docker. It's kind of apples and carbeutors. Just like Habitat does not compete with Chef, Habitat and OpsMop are also very different things.

Chef is a closer thing to compare it to.

"(not whatever Ansible was passing off as YAML"

It at least was parseable.

The trick was, it was always supposed to be at the level of complexity of "grocery lists, but..." ... but frequently I think people tried to program in it a little hard.

OpsMop is based on the idea of a cyborg system - writeable for humans, but easy to interface with machines.

I take some alternate views, and believe YAML is best kept streamlined, which is why I also did not use YAML anchors in ansible.

I suspect people will probably adopt it if they like it mostly for new projects.

We still do have a lot of modules to write yet, so if you are interested in that, stop by talk.msphere.io - I'm open to a lot of enhancements there, but also want to keep it somewhat controlled.

A lot of the early adoption is no doubt going to be folks doing CM-based builds for images (EC2, docker, whatever), where everything remains pretty disconnected.

A mid-way adoption stage might be using opsmop to run existing ansible content, though ... that's really pointing towards wanting to add something like rsync, which is easy, but... I need to think about that a little bit.