The best Hacker News stories from Show from the past day
Latest posts:
Show HN: Archsense – Accurately generated architecture from the source code
Postgres Language Server
hey HN. this is a Language Server[0] designed specifically for Postgres. A language server adds features to IDEs (VSCode, NeoVim, etc) - features like auto-complete, go-to-definition, or documentation on hover, etc.<p>there have been previous attempts at adding Postgres support to code editors. usually these attempts implement a generic SQL parser and then offer various "flavours" of SQL.<p>This attempt is different because it uses the actual Postgres parser to do the heavy-lifting. This is done via libg_query, an excellent C library for accessing the PostgreSQL parser outside of the server. We feel this is a better approach because it gives developers 100% confidence in the parser, and it allows us to keep up with the rapid development of Postgres.<p>this is still in early development, and mostly useful for testers/collaborators. the majority of work is still ahead, but we've verified that the approach works. we're making it public now so that we can develop it in the open with input from the community.<p>a lot of the credit belongs to pganalyze[1] for their work on libpg_query, and to psteinroe (<a href="https://github.com/psteinroe">https://github.com/psteinroe</a>) who the creator and maintainer.<p>[0] LSP: <a href="https://microsoft.github.io/language-server-protocol/" rel="nofollow noreferrer">https://microsoft.github.io/language-server-protocol/</a><p>[1] pganalyze: <a href="https://pganalyze.com/" rel="nofollow noreferrer">https://pganalyze.com/</a>
Show HN: Ikkekernel – The Fork of Linux
Show HN: Name Checker – Find project name collisions
Name Checker is a tool for when you want to create a new project and don’t want to check all the places (npm, apt, GitHub) for a name collision, you can just use this tool instead.<p>I started working on this because I noticed on HN folks sometimes create a new company and SAAS and they didn’t notice that the name was already taken.<p>Please let me know if y'all have any questions or comments!
Show HN: Name Checker – Find project name collisions
Name Checker is a tool for when you want to create a new project and don’t want to check all the places (npm, apt, GitHub) for a name collision, you can just use this tool instead.<p>I started working on this because I noticed on HN folks sometimes create a new company and SAAS and they didn’t notice that the name was already taken.<p>Please let me know if y'all have any questions or comments!
Show HN: Name Checker – Find project name collisions
Name Checker is a tool for when you want to create a new project and don’t want to check all the places (npm, apt, GitHub) for a name collision, you can just use this tool instead.<p>I started working on this because I noticed on HN folks sometimes create a new company and SAAS and they didn’t notice that the name was already taken.<p>Please let me know if y'all have any questions or comments!
Show HN: Custom Haskell handlers for Nginx
This is rather a mature project. It began out of curiosity: I wanted to test if Haskell FFI was powerful and expressive enough to interconnect C and Haskell code flawlessly. Particularly, if C strings generated inside Nginx can be shared within Haskell code and what must be done to respect their lifetimes etc.<p>Recently, I released version 3.2.0 with revamped README (with a lot of examples) and a new approach to building Haskell handlers using the modernized cabal v2-build for dependencies.
Show HN: Custom Haskell handlers for Nginx
This is rather a mature project. It began out of curiosity: I wanted to test if Haskell FFI was powerful and expressive enough to interconnect C and Haskell code flawlessly. Particularly, if C strings generated inside Nginx can be shared within Haskell code and what must be done to respect their lifetimes etc.<p>Recently, I released version 3.2.0 with revamped README (with a lot of examples) and a new approach to building Haskell handlers using the modernized cabal v2-build for dependencies.
Show HN: Custom Haskell handlers for Nginx
This is rather a mature project. It began out of curiosity: I wanted to test if Haskell FFI was powerful and expressive enough to interconnect C and Haskell code flawlessly. Particularly, if C strings generated inside Nginx can be shared within Haskell code and what must be done to respect their lifetimes etc.<p>Recently, I released version 3.2.0 with revamped README (with a lot of examples) and a new approach to building Haskell handlers using the modernized cabal v2-build for dependencies.
Show HN: Interesting companies that are running on-prem
Show HN: Interesting companies that are running on-prem
Show HN: SymbolicAI
The SymbolicAI project started somewhere at the end of the last year and had its first commit mid January this year. If I would to be briefly summarize "why" do we think it's a project worth working on, is because of the following idea: we're slowly marching towards software 3.0 and we need to grow frameworks to a maturity point that would allow people not only to PoC their own ideas, but also to gain access to a strong community support that nurtures the mutual exchange of ideas between the individuals. I personally believe this is the secret behind many successful OS projects (e.g. Neovim, LazyGit, PyTorch, Jax, just to name a few).<p>FAQ<p>Q: What the project does?<p>A: A lot. You can build your own chatbot, interact with as many as 13 tools (search, wolfram, dall-e, blip, clip, ocr, pinecone, whisper, selenium, local files, etc.), pretty much most of the things you've already seen hyped or cool on the social media.<p>Q: Sounds close to… LangChain…?<p>A: Briefly, I think LangChain grew too fast and became the jack of all trades but the master of none. I'm sure they had their reasons for approaching things the way they did, and I don't want to make this post about them more than I already have. Others have had more thorough investigations of this topic and better rants than I would.<p>Q: Ok, then tell me why would I want to be part of it?<p>A: We're x2 core developers. Sometimes less is more, giving us time to think more deeply about designing the framework and making it accessible to others. Some principles:<p>- Ease of use and flexibility: we were heavily inspired by PyTorch, and we aimed to follow the same code structure one uses with torch. Our original intuition was that when you're introducing something new, tying it with something people are familiar with will make it more accessible (in terms of read/write). Not only this, but the initial recipe proved quite successful and replacing it with something else without concrete reasons is not worth doing IMHO. Moreover, one of our long-term visions is to have smooth integration with torch. We aim to grant SymbolicAI differentiable features. Imagine your chatbot learning to better use its memory (e.g. how to update its memory with relevant information).<p>- As in torch everything is a tensor, in our framework everything is a Symbol. A Symbol once defined gets accessed to some primitives (as an analogy think of PrimTorch) which would easily allow you to compose complex expressions or manipulate Symbol variables. This unlock very fast manipulations (i.e. dot notation <|object|><|dot|><|method|>).<p>- The hard work is done by decorators. We use them for the following reasons: (1) modularity, (2) composition, (3) flexibility, and (4) readability.<p>- We want to make a cohesive dev environment. I'm a script kiddo and I don't like to leave my terminal. I dislike web interfaces. I want to use my local env with my own setup. We have an experimental feature that is built on top of git and would enable package management. It's similar to pip, but for extensions built with our framework. Another long-term vision is to make accessible to anyone using our framework a quick share with the community. See <a href="https://github.com/ExtensityAI/symscribe">https://github.com/ExtensityAI/symscribe</a> for a showcase of how to do transcription and create youtube chapters with Whisper with our package manager.<p>There's much more to say, but I will stop here. Please check our GitHub README (<a href="https://github.com/Xpitfire/symbolicai">https://github.com/Xpitfire/symbolicai</a>) for a more deep dive or our latest tutorial video that highlights some relevant use-cases from a more high-level POV (<a href="https://www.youtube.com/watch?v=0AqB6SEvRqo">https://www.youtube.com/watch?v=0AqB6SEvRqo</a>).<p>I really do hope that at least some of you reading will get interested. We have so many goals we want to reach, so many ideas we want to test, and probably just as many bugs (we call them maggots just for fun) we need to fix.<p>We need you.
Show HN: SymbolicAI
The SymbolicAI project started somewhere at the end of the last year and had its first commit mid January this year. If I would to be briefly summarize "why" do we think it's a project worth working on, is because of the following idea: we're slowly marching towards software 3.0 and we need to grow frameworks to a maturity point that would allow people not only to PoC their own ideas, but also to gain access to a strong community support that nurtures the mutual exchange of ideas between the individuals. I personally believe this is the secret behind many successful OS projects (e.g. Neovim, LazyGit, PyTorch, Jax, just to name a few).<p>FAQ<p>Q: What the project does?<p>A: A lot. You can build your own chatbot, interact with as many as 13 tools (search, wolfram, dall-e, blip, clip, ocr, pinecone, whisper, selenium, local files, etc.), pretty much most of the things you've already seen hyped or cool on the social media.<p>Q: Sounds close to… LangChain…?<p>A: Briefly, I think LangChain grew too fast and became the jack of all trades but the master of none. I'm sure they had their reasons for approaching things the way they did, and I don't want to make this post about them more than I already have. Others have had more thorough investigations of this topic and better rants than I would.<p>Q: Ok, then tell me why would I want to be part of it?<p>A: We're x2 core developers. Sometimes less is more, giving us time to think more deeply about designing the framework and making it accessible to others. Some principles:<p>- Ease of use and flexibility: we were heavily inspired by PyTorch, and we aimed to follow the same code structure one uses with torch. Our original intuition was that when you're introducing something new, tying it with something people are familiar with will make it more accessible (in terms of read/write). Not only this, but the initial recipe proved quite successful and replacing it with something else without concrete reasons is not worth doing IMHO. Moreover, one of our long-term visions is to have smooth integration with torch. We aim to grant SymbolicAI differentiable features. Imagine your chatbot learning to better use its memory (e.g. how to update its memory with relevant information).<p>- As in torch everything is a tensor, in our framework everything is a Symbol. A Symbol once defined gets accessed to some primitives (as an analogy think of PrimTorch) which would easily allow you to compose complex expressions or manipulate Symbol variables. This unlock very fast manipulations (i.e. dot notation <|object|><|dot|><|method|>).<p>- The hard work is done by decorators. We use them for the following reasons: (1) modularity, (2) composition, (3) flexibility, and (4) readability.<p>- We want to make a cohesive dev environment. I'm a script kiddo and I don't like to leave my terminal. I dislike web interfaces. I want to use my local env with my own setup. We have an experimental feature that is built on top of git and would enable package management. It's similar to pip, but for extensions built with our framework. Another long-term vision is to make accessible to anyone using our framework a quick share with the community. See <a href="https://github.com/ExtensityAI/symscribe">https://github.com/ExtensityAI/symscribe</a> for a showcase of how to do transcription and create youtube chapters with Whisper with our package manager.<p>There's much more to say, but I will stop here. Please check our GitHub README (<a href="https://github.com/Xpitfire/symbolicai">https://github.com/Xpitfire/symbolicai</a>) for a more deep dive or our latest tutorial video that highlights some relevant use-cases from a more high-level POV (<a href="https://www.youtube.com/watch?v=0AqB6SEvRqo">https://www.youtube.com/watch?v=0AqB6SEvRqo</a>).<p>I really do hope that at least some of you reading will get interested. We have so many goals we want to reach, so many ideas we want to test, and probably just as many bugs (we call them maggots just for fun) we need to fix.<p>We need you.
Show HN: SymbolicAI
The SymbolicAI project started somewhere at the end of the last year and had its first commit mid January this year. If I would to be briefly summarize "why" do we think it's a project worth working on, is because of the following idea: we're slowly marching towards software 3.0 and we need to grow frameworks to a maturity point that would allow people not only to PoC their own ideas, but also to gain access to a strong community support that nurtures the mutual exchange of ideas between the individuals. I personally believe this is the secret behind many successful OS projects (e.g. Neovim, LazyGit, PyTorch, Jax, just to name a few).<p>FAQ<p>Q: What the project does?<p>A: A lot. You can build your own chatbot, interact with as many as 13 tools (search, wolfram, dall-e, blip, clip, ocr, pinecone, whisper, selenium, local files, etc.), pretty much most of the things you've already seen hyped or cool on the social media.<p>Q: Sounds close to… LangChain…?<p>A: Briefly, I think LangChain grew too fast and became the jack of all trades but the master of none. I'm sure they had their reasons for approaching things the way they did, and I don't want to make this post about them more than I already have. Others have had more thorough investigations of this topic and better rants than I would.<p>Q: Ok, then tell me why would I want to be part of it?<p>A: We're x2 core developers. Sometimes less is more, giving us time to think more deeply about designing the framework and making it accessible to others. Some principles:<p>- Ease of use and flexibility: we were heavily inspired by PyTorch, and we aimed to follow the same code structure one uses with torch. Our original intuition was that when you're introducing something new, tying it with something people are familiar with will make it more accessible (in terms of read/write). Not only this, but the initial recipe proved quite successful and replacing it with something else without concrete reasons is not worth doing IMHO. Moreover, one of our long-term visions is to have smooth integration with torch. We aim to grant SymbolicAI differentiable features. Imagine your chatbot learning to better use its memory (e.g. how to update its memory with relevant information).<p>- As in torch everything is a tensor, in our framework everything is a Symbol. A Symbol once defined gets accessed to some primitives (as an analogy think of PrimTorch) which would easily allow you to compose complex expressions or manipulate Symbol variables. This unlock very fast manipulations (i.e. dot notation <|object|><|dot|><|method|>).<p>- The hard work is done by decorators. We use them for the following reasons: (1) modularity, (2) composition, (3) flexibility, and (4) readability.<p>- We want to make a cohesive dev environment. I'm a script kiddo and I don't like to leave my terminal. I dislike web interfaces. I want to use my local env with my own setup. We have an experimental feature that is built on top of git and would enable package management. It's similar to pip, but for extensions built with our framework. Another long-term vision is to make accessible to anyone using our framework a quick share with the community. See <a href="https://github.com/ExtensityAI/symscribe">https://github.com/ExtensityAI/symscribe</a> for a showcase of how to do transcription and create youtube chapters with Whisper with our package manager.<p>There's much more to say, but I will stop here. Please check our GitHub README (<a href="https://github.com/Xpitfire/symbolicai">https://github.com/Xpitfire/symbolicai</a>) for a more deep dive or our latest tutorial video that highlights some relevant use-cases from a more high-level POV (<a href="https://www.youtube.com/watch?v=0AqB6SEvRqo">https://www.youtube.com/watch?v=0AqB6SEvRqo</a>).<p>I really do hope that at least some of you reading will get interested. We have so many goals we want to reach, so many ideas we want to test, and probably just as many bugs (we call them maggots just for fun) we need to fix.<p>We need you.
Show HN: I made Grammarly for accessibility code violations
Show HN: I made Grammarly for accessibility code violations
Show HN: YC idea matcher – Submit an idea and get a list of similar YC companies
This project uses semantic search, an advanced search technique that aims to understand the intent and context behind a search query instead of just matching keywords.<p>It's built using Neon Postgres + pg_embedding and OpenAI for generating embeddings. More details can be found in the repo
<a href="https://github.com/neondatabase/yc-idea-matcher">https://github.com/neondatabase/yc-idea-matcher</a>
Show HN: YC idea matcher – Submit an idea and get a list of similar YC companies
This project uses semantic search, an advanced search technique that aims to understand the intent and context behind a search query instead of just matching keywords.<p>It's built using Neon Postgres + pg_embedding and OpenAI for generating embeddings. More details can be found in the repo
<a href="https://github.com/neondatabase/yc-idea-matcher">https://github.com/neondatabase/yc-idea-matcher</a>
Show HN: YC idea matcher – Submit an idea and get a list of similar YC companies
This project uses semantic search, an advanced search technique that aims to understand the intent and context behind a search query instead of just matching keywords.<p>It's built using Neon Postgres + pg_embedding and OpenAI for generating embeddings. More details can be found in the repo
<a href="https://github.com/neondatabase/yc-idea-matcher">https://github.com/neondatabase/yc-idea-matcher</a>
Show HN: Gdańsk AI – full stack AI voice chatbot
Hi!<p>It's a complete product with integrations to Auth0, OpenAI, Google Cloud and Stripe, which consists of Next.js Web App, Node.js + Express Web API and Python + FastAPI AI API<p>I've built this software, because I wanted to make money by selling tokens to enable users talking with the chatbot. But I think Google / Apple will include such AI-powered assistant in their products soon, so nobody will pay me for using it<p>So I open source the product today and share it as a GNU GPL-2 licensed software<p>I'm happy to assist in case if something is unclear or requires additional docs and answer any questions about Gdańsk AI :)<p>Thanks