Hacker Newsnew | past | comments | ask | show | jobs | submit | ericHosick's commentslogin

Yes! Hopefully a language that supports code as data (homoiconicity).


There is yamlscript for you now :) No security of course.

Jokes aside, I like proper yaml anchors. Other CI's do support these and it made writing yaml actions much easier, esp. complicated cross-building recipes with containers and qemu.


> Anyone who claims that FSD doesn't work is flat out lying.

i've had "fsd" for years and basically never use it now. i just don't trust it.

anytime there is a new version update, i do try to have it drive from the house to the market (about 3 miles: two rights at stop signs, two rights and 1 left at stop lights) and there has never been a single time where i didn't have to take over at least once.

and maybe the problem is that i have had "fsd" while it was going through development. the trust is low from the many times it has tried to kill me. so, whenever it is on, there is nothing but stress. and so i'm more apt than not to take over when i see anything even minutely out of the ordinary.


To help understand why a complex query with many joins comes back empty, I like to provide helper debug functions that builds the query step by step. Each block checks one prerequisite and tells the user what’s missing:

```sql FUNCTION debug_user(user_id):

  IF NOT (SELECT FROM user WHERE user.user_id = user_id) THEN
    -- user doesn’t exist
  END IF;

  IF NOT (SELECT FROM user
           JOIN user_addr ON user_addr.user_id = user.user_id
           WHERE user.user_id = user_id) THEN
    -- user has no address
  END IF;

  -- keep adding joins until you find the break
```

because when you have a query that involves 6 relations, and you don't get results, it is nice to know why.


I do the "same thing", but using PostgreSQL `EXPLAIN ANALYZE`. EXPLAIN ANALYZE has information about the number of rows returned, which means I know exactly which node in the query plan failed to return expected values.


don't mean to push the goalpost (didn't mention the following in the above post)

these functions can also be exposed in admin ui's making it easier for the general admin users/support users.

another very useful use case is when row level security (RLS) is enabled.


Not for function though unless you specify it as a debug flag inside the function?


You can can also run a detailed explain plan and with a suitable visualizer it’s trivial to see where the query fell apart. You get to see the actual data distribution this way.


Yes. I posted in Feb of 2021, was hired and still at the same place.


Will you be implementing synced blocks?


Synced blocks are interesting. It might come in the future.


there are a lot of great usage patterns going on.

i saw checked boxes hit almost 800K and then start dropping fast.

i've seen every other checkbox get checked on the entire screen in a second. some great scripting going on and i'm sure a lot insight is being learned by watching the tech stack handle these loads.

i noticed initially log messages were showing one check box change at a time but at some point updated to batching which is great. release and optimize!


A long time ago I was building a data entry system is Visual Basic for forms that, once entered, need to both store the input in a database and print out the form. There were hundreds and hundreds of different forms.

So, instead of making an interface for data entry and then a system to print the forms, the data entry UI for each form looked exactly the same as the forms themselves. Scrolling was needed because at the time there were only low resolution CRT screens.

However, for printing, I would draw the filled out form at a very high resolution in video memory "off screen" and print that.

So, the work to create one form resulted in supporting both data entry and printing.

It turned out that since the people doing the data entry also knew the forms really well, they were able to enter the data 2.5 times faster than initial estimates.


This looks super cool.

Do you support Common Table Expressions?

What kind of overhead have you seen?

Does this negate the need for indexes in some cases?


It's great to see a link specifically about Psytrance on Hacker News.

I enjoy trying to understand how Psytrance is made and if that is something you find interesting too checkout @Projector_music on youtube (no affiliation).


I would love to learn about this... Specially in the era of demucs, maybe some python automation to ableton live tracks that we can modify through the day slightly? I have playlist with dozens of 1+ hour videos on YouTube of psytrance and I find them so enjoyable, full of bass and good for focusing (granted there's the obligatory 1 minute muttering in the song of Terrence McKenna but OK, if psilocybin helped them create these amazing songs then so be it )


Learn about synthesis. Specifically the relation between the harmonic structure of the saw and square wave and the properties of a resonant filter that can pick these harmonics out in various ways. For psytrance many of the sequences are sparse, have subtle glissando and slides, in phrygian, hungarian minor and other exotic scales with canonical forms and contrapuntal rounds often achieved by shifting subsequences a few steps forward or backward.


If you want to literally program music, I can recommend Sonic Pi. The current top comment describes the typical psy bass line in technical terms, which is enough to recreate it in code.


Any chance you typo'd that? I can't find it.


Maybe @projektor_music; seems to match the genre.


I would like to make a 120 square foot (internal dimensions) max 10 feet high roof to foundation listening room in the back yard. Very mild climate so heating/cooling is not necessary. Wall thickness is not an issue.

Do you think that is possible while still getting good base response and have minimal sound escape?


What is your intended purpose for the room? Listening to records for pleasure? Critical listening for mixing and editing audio? Something else?

My first rule of thumb is don't make the ceiling 8' high. 12' high is ideal, but 10' high works too. When people sit in a chair their heads are located 4' from the floor, which means that with an 8' ceiling their ears are located halfway between the floor and the ceiling. This is the primary vertical room mode and will cause your low-end to cancel itself at 70Hz right off the bat.

A solid concrete slab in the floor is ideal so that your floor doesn't resonate.

120 sq ft is relatively small and not ideal, but if that's what you have then so be it. What you DON'T want is for your room dimensions to be square. The more rectangular that you can make your room without the length and width being integer multiples the better. Don't make the room 11'x11'. Make it 9'x 14', or something in that neighborhood. This will distribute your room modes more evenly, whereas a square room will have the same modes along the length dimension and the width dimension. This will give you a massive cut and boost at in your low-end.

If your speakers won't be soffit-mounted then place them as close to the wall as possible. Some people may advise you to place them 3' off of the wall because of a phenomena called Speaker Boundary Interference Response. Ignore this and place your speakers against the wall and save yourself some trouble.

Lastly, you don't want your listening position to fall on a position that is 1/2 or 1/4 of the length of the room from the front to back wall. Those are where your largest room modes (and therefore largest bass cancellations) are going to occur. Ideally your listening position should fall at the point 38% of the room length between the front wall or rear wall.

Unfortunately it's hard to advise you further on the room treatment and isolation without discussing the project holistically. Your room dimensions, speaker choice, level of isolation, room treatment, listening position, and furniture all interact with one another and I need more information.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: