HNHacker News
TopNewBestAskShowJobs

eurekin

1,035 karma · joined September 6, 2012

"thoughtful considerations about practical applications"

Self hosting, SBCs, AI/Vision/LLMs

submissionscomments
eurekin··on How video games use lookup tables
Also, 2d games have one significant advantage over many 3d titles: you are not burdened with extra "camera operator" task so much
eurekin··on Rendering protein structures inside cells at the atomic level with Unreal Engine
One of videos:

https://twitter.com/manorlaboratory/status/17630941356392943...

Anybody came across the code?

eurekin··on Everyone seems to forget why GNOME and GNOME 3 and Unity happened (2022)
Please elaborate
eurekin··on American drivers even more distracted by phones. Pedestrian deaths are soaring
Speculation: total car mass implies the need of increased structural support in the case of a roll. I'm also guessing it's regulated
eurekin··on AI is a 'Glorified Tape Recorder,' Says Theoretical Physicist Michio Kaku (2023)
I'd really love to see his more recent real physics publications.

arXiv lists the latest as 24 year old:

https://arxiv.org/search/?query=Michio+Kaku&searchtype=all&s...

. Didn't he pivot around 2000's to a public speaker figure?

eurekin··on Phind-70B: Closing the code quality gap with GPT-4 Turbo while running 4x faster
I think we need a lot better benchmarks in order to capture the real complexity of typical day to day development.

I gave it my typical CI bootstrapping task:

> Generate gitlab ci yaml file for a hybrid front-end/backend project. Fronted is under /frontend and is a node project, packaged with yarn, built with vite to the /backend/public folder. The backend is a python flask server built with poetry. The deployable artifact should be uploaded to a private pypi registry on pypi.example.com. Use best practices recommended by tool usage.

and it generated scripts with docker run commands [1]:

  install_dependencies:
    stage: install
    script:
      - docker run --rm -v $(pwd):/app -w /app/frontend node:14 yarn install
      - docker run --rm -v $(pwd):/app -w /app/backend python:3.8 poetry install

  build_frontend:
    stage: build
    script:
      - docker run --rm -v $(pwd):/app -w /app/frontend node:14 yarn build

  build_backend:
    stage: build
    script:
      - docker run --rm -v $(pwd):/app -w /app/backend python:3.8 poetry build

  deploy_artifact:
    stage: deploy
    script:
      - docker run --rm -v $(pwd):/app -w /app/backend python:3.8 poetry publish -r $PYPI_URL --username $PYPI_USER --password $PYPI_PASSWORD
    only:
      - master
Which, feels more like "connect the dots" or a very rough sketch, that might end up completely replaced. Commands in general seem ok (yarn install && yarn build, poetry build && poetry publish), but the docker run could be better expressed simply as a "image: " attribute of each job. I asked about that and I've been given general "why docker is useful" non-answer.

It also introduced a parallel build stage: frontend and backend are built at the same time, but in my question, I deliberately introduced serial dependency: the frontend code goes into the backend project. The parallel approach would be of course better, if it would correctly construct the end artifact before uploading, but it doesn't do so. Also a bit surprisingly, node install and poetry install could actually run in parallel as-is, but the generated code runs serially.

It uses outdated versions of tools. Python 3.8 seems still ok and used in many online examples due to some compatibility quirks with compiled libraries, but node 14 is more than 3 years old now. Current node LTS is 20.

For comparison, here's the chatgpt4 version [2] :

  prepare:
    stage: prepare
    image: python:3.9
    script:
      - apt-get update && apt-get install -y nodejs npm
      - npm install --global yarn
      - cd frontend && yarn install
      - cd ../backend && poetry config virtualenvs.create false && poetry install

  build-frontend:
    stage: build-frontend
    image: node:latest
    script:
      - cd frontend
      - yarn install
      - yarn build --outDir ../backend/public

  build-backend:
    stage: build-backend
    image: python:3.9
    script:
      - cd backend
      - poetry install --no-dev

  package:
    stage: package
    image: python:3.9
    script:
      - cd backend
      - poetry build
    artifacts:
      paths:
        - backend/dist/*

  deploy:
    stage: deploy
    image: python:3.9
    script:
      - pip install twine
      - cd backend
      - twine upload --repository-url $PYPI_REPOSITORY_URL -u $PYPI_USERNAME -p $PYPI_PASSWORD dist/*
    only:
      - main
Not perfect, but catches a lot more nuance:

- Uses python as base image, but adds the node to it (not a big fan of installing tools during build, but at least took care of that set-up)

- Took care of passing the artefacts built by the frontend; explicitly navigates to correct directories (cd frontend ; ... ; cd ../backend)

- --no-dev flag given to `poetry install` is a great touch

- Added "artifacts: " for good troubleshooting experience

- Gave "only: main" qualifier for the job, so at least considered a branching strategy

- Disabled virtualenv creation in poetry. I'm not a fan, but makes sense on CI

I would typically also add more complexity to that file (for example using commitizen for releases) and I only feel confident that gpt4 won't fall apart completely.

EDIT: Yes, gpt4 did ok-ish with releases. When I pointed out some flaws it responded with:

  You're correct on both counts, and I appreciate your attention to detail.
Links:

- [1] https://www.phind.com/agent?cache=clsye0lmt0019lg08bg09l2cf

- [2] https://chat.openai.com/share/67d50b56-3b68-4873-aa56-20f634...

eurekin··on Groq runs Mixtral 8x7B-32k with 500 T/s
Jaw dropping. Both groq and mixtral.

I used following prompt:

Generate gitlab ci yaml file for a hybrid front-end/backend project. Fronted is under /frontend and is a node project, packaged with yarn, built with vite to the /backend/public folder. The backend is a python flask server

eurekin··on Inquiry launches into Polish ex-government's 'Pegasus' spying
Pole here.

I expect the long tradition of the dedicated committee sucking off public funds for years without any result to be upheld :)

eurekin··on Google has removed Conversations_im from the Play Store
That's perfect, thank you!
eurekin··on Google has removed Conversations_im from the Play Store
Yes, and there is an option to opt-out of that list. I did enable that.

I'll phrase my issue differently: Is there any way to have reliable notification delivery that are time critical? Is actually calling the only 100% reliable option, as the PagerDuty does?

eurekin··on Google has removed Conversations_im from the Play Store
It solved "delayed notifications" for me, for certain: I still have original Samsung next to iPhone and it's clear as day:

- iPhone rings, Samsung nothing

- I wait few minutes just to be sure and pick up Samsung - immediately after picking it up the notification shows up, with the exact timestamp of the moment I picked it up

That's why I called it a tangent to XMPP

eurekin··on Google has removed Conversations_im from the Play Store
Thank you!

This actually looks very relevant [1]:

> Even disabling the system battery restrictions does not save the app from being killed. Let's find out, if it is a bug or a feature... Here you can read more details

I have Samsung s21; after years of fighting it (3 samsungs) I'm welcome to a bug explanation

- [1] https://dontkillmyapp.com/samsung#:~:text=Even%20disabling%2...

eurekin··on Google has removed Conversations_im from the Play Store
Pardon for a tangent!

I've been so full of missing and delayed notifications I just bought an iPhone, which has zero issues with it, with zero configuration.

Still, as I made a few really small android apps in the past, this has been a sticking point for me for years.

Is it possible to write an app that can notify at ANY time? Let's say I want to monitor my self-hosted infrastructure. On an iPhone I get e-mail alerts right away. On Android, some ring exactly at the time I pick up the cursed phone.

I checked for every possible consumer facing configuration option (deep sleep exclusion, background service allowed, etc.) and I found zero reliable options.

eurekin··on Hi everyone yes, I left OpenAI yesterday
Not only inspired, but probably also did a soothing therapy with his voice and delivery pace. :)

Strikes a balance between sounding engaging and soothing at the same time.

eurekin··on Ask HN: What have you built with LLMs?
The first and good enough for me not to look further
eurekin··on Ask HN: What have you built with LLMs?
I remember whisper v3 large blowing my mind: it was able to properly transcribe some two language monstrosity (przescreenować, which is a english word "to screen a candidate", but conjugated according to standard polish rules). Once I saw that I thought "it's finally time: truly good transcription has finally arrived".

So I view whisper as sota with excellent accuracy.

Now, for the type of transcription I need speaker discerning is much more valuable than accurate to the point translation: so it will be summarized anyway and that tends to gloss over some of errors anyway.

That said, pyannote has also caught me off guard: it correctly annotated lazily spoken "DP8" with non native speaker accent.

It looks really good

eurekin··on Ask HN: What have you built with LLMs?
That could actually be a universal ad-whacker for similarily stubborn sites (reddit)
eurekin··on Ask HN: What have you built with LLMs?
"Widjosumarajzer" = video summarizer

It's just a hodgepodge of prototype scripts, but one that I actually used on a few occasions already. Most of the work is manual, but does seem easily run as "fire and forget" with maybe some ways to correct afterwards.

First, I'm using the pyannote for speech recognition: it converts audio to text, while being able to discern speakers: SPEAKER_01, _02, etc. The diarization provides nice timestamps, with resolution down to parts of words, which I later use in the minimal UI to quickly skip around, when a text is selected.

Next, I'm running a LLM prompt to identify speakers; so if SPEAKER_02 said to SPEAKER_05 "Hey Greg", it will identify SPEAKER_05 = Greg. I think it was my first time using the mistral 7b and I went "wow" out loud, once it got correct.

After that, I fill in the holes manually in speaker names and move on to grouping a bunch of text - in order to summarize. That doesn't seem interesting at a glance, but removing the filler words, which there are a ton of in any presentation or meeting, is a huge help. I do it chunk by chunk. I'm leaning here for the best LLM available and often pick the dolphin finetune of mixtral.

Last, I summarize those summarizations and slap that on the front of the google doc.

I also insert some relevant screenshots in between chunks (might go with some ffmpeg automatic scene change detection in the future).

aaand that's it. A doc, that is searchable easily. So, previously I had a bunch of 30 min. to 90 min. meeting recordings and any attempt at searching required a linear scan of files. Now, with a lot of additional prompt messaging I was able to:

- create meeting notes, with especially worthwile "what did I promise to send later" points

- this is huge: TALK with the transcript. I paste the whole transcript into the mistral 7b with 32k context and simply ask questions and follow-ups. No more watching or skimming an hour long video, just ask the transcript, if there was another round of lay-offs or if parking spaces rules changed.

- draw a mermaid sequence diagram, of a request flowing across services. It wasn't perfect, but it got me super excited about future possibilities to create or update service documentation based on ad-hoc meetings.

I guess everybody is actually trying to build the same, seems like a no-brainer based on current tool's capabilities.

eurekin··on Show HN: Natural-SQL-7B, a strong text-to-SQL model
That's impressive
eurekin··on How does Sidekiq really work?
I just watched the: http://railscasts.com/episodes/115-model-caching-revised

and still got some value out of it. Rails + Railscasts was truly a exceptional combination

eurekin··on Nasopharyngeal Lymphatics Found to Be Crucial for Cerebrospinal Fluid Outflow
Correction: up to 50. Without intervention it was closer to 28
eurekin··on The curious case of the disappearing Polish Ś (2015)
That's a true emotional rollercoaster!
eurekin··on Nasopharyngeal Lymphatics Found to Be Crucial for Cerebrospinal Fluid Outflow
I had a runny nose most of my life - diagnosed allergies and etc.

One visit in laryngologist got me thinking; he said: "It's simple. Wet wounds heal fast and well. Dry ones can even not heal at all. You have dry lung mucosa and that's why you get infected easily: it's like an open wound".

He was right, after keeping > 50% humidity around myself I got better. That got me thinking of experimenting more.

What if, I had a running nose, because the body wanted to make my lungs less dry? So I forced myself to breath through nose for two weeks and again, got better. Still doing it, years after.

eurekin··on Juno – A YouTube Client for Vision Pro
I love this comic on-topic:

https://www.reddit.com/r/comics/comments/11gxpcu/our_little_...

eurekin··on Juno – A YouTube Client for Vision Pro
Another one with a same pet peeve here.

It's especially "interesting", when the slider allows to navigate to the exact frame you want (that happens very rarely) and the information you want to see is in the subtitles burned into the video - the ones not shifting with UI controls. The UI obscures that and I have to make tens of attempts with increased sloppiness due to frustration to take it all in.

Most often it's something I keep mishearing and need subtitles to actually understand what's being talked about. For example, I keep hearing "Hello awful person" in Anton Petrov's videos. https://youtu.be/PyRf7B1Ji4A?si=bIA7S8qB_WLdLgVs&t=45

eurekin··on The curious case of the disappearing Polish Ś (2015)
I did do just that!

I also had a formal footer setup added to every email, so it looked really legit.

eurekin··on DeepSeek Coder: Let the Code Write Itself
Very well researched!

I'd add the MR review use case.

I have limited success with feeding a LLM (dolphin finetune of mixtral) a content of a merge request coming from my team. It was few thousand lines of added integration test code and I just couldn't be bothered/had little time to really delve.

I slapped the diff and used about 10 prompt strategies to get anything meaningful. So my first initial impressions were: clearly it was finetuned on too short responses. It kept putting in "etc.", "and other input parameters", "and other relevant information". At one point I was ready to give up; it clearly hallucinated.

Or that's what I thought: turned out there was some new edge case of a existing functionality added that was added, without ever me noticing (despite being on the same meetings).

I think it actually saved me a lot of hours or pestering other team members.

eurekin··on Getting fitter can reduce prostate cancer risk by 35%, study finds
> Walk for 5km without issue. Do 10 pushups. Do 20 situps. Do 20 squats.

Squats are often considered one of the most challenging exercises, as my physiotherapist points out. It's easy to underestimate them – I did 70 squats once and ended up straining my back.

The key to a proper squat is maintaining stable back support throughout the entire movement. This principle isn't just crucial for squats; it's fundamental for all heavy weightlifting exercises. It's also incredibly relevant to everyday tasks like doing laundry or cleaning, as these activities often involve similar lifting motions.

This concept is known as maintaining stability in the sagittal plane. However, it's equally important to focus on coronal and axial support, strength, and pain-free movement.

It's worth noting that exercises like situps and pushups, often seen as simpler, can also be performed incorrectly by beginners.

Regarding diet, it's an even more complex topic. Nutrition needs can vary greatly from person to person, and a one-size-fits-all approach is rarely effective. It's essential to consider individual differences and specific circumstances when discussing dietary advice.

eurekin··on Meta AI releases Code Llama 70B
From here:

https://filmthreat.com/news/male-and-pale-is-stale-responses...

  As a result, the money generated by the industry has seen a 
  remarkably noticeable drop. The rise of the term “flop buster”
  (in response to so many films like Indiana Jones and the 
  Dial of Destiny underperforming at the box office) seems to 
  be directly related to mainstream audiences’ wholesale rejection
  of the over-messaging they see hijacking entertainment.
addresses your "it's just nature of Box Office" flopping argument
eurekin··on Meta AI releases Code Llama 70B
Ok, it's quite possible I just didn't understand the writing. How about this part?

> Disney shareholders were once over $200 billion wealthier than they are now

Is that an exaggeration?

← PreviousPage 8 of 21Next →