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

>Our corporate IT is hammering pretty hard on the notion that .docx and .pdf (but especially .docx and .xlsx) are unsafe.

why is pdf unsafe?

What format is safe then?


The take-home message from IT is basically "never open an e-mail attachment from unknown sender".

I have yet to see an exploit that can be performed with a .txt file. PDF files can have all sorts of interactive junk and nested files embedded in them - you can get really crazy in that format.

This is it. You can load a .txt as a skill too.

Adobe added embedded javascript to pdfs. Its an option to turn it off but its enabled by default. I turned mine off a long time back and never notice any problems but I don't use a lot of pdfs with interactive forms.

At the same time they were doing this, I also iterated on an AI-built web browser with around 2,000 lines of code. I was heavily in the loop for it, it didn't run autonomously. You can see the current version of the source code here:

https://taonexus.com/publicfiles/jan2026/172toy-browser.py.t... (turn the sound down, it's a bit loud if you interact with the built-in Tetris clone.)

You can run it after installing the packages, "pip install requests pillow urllib3 numpy simpleaudio"

I livestreamed the latest version here 2 weeks ago, it's a ten minute video:

https://www.youtube.com/watch?v=4xdIMmrLMLo&t=45s

I'm posting from that web browser. As an easter egg, mine has a cool Tetris clone (called Pentrix) based on pieces with 5 segments, the button for this is at the upper-right.

If you have any feature suggestions for what you want in a browser, please make them here:

https://pollunit.com/polls/ahysed74t8gaktvqno100g


>When working in my core stack though it's a nice force multiplier for routine changes.

what's your core stack?


you're not meant to scroll ahead, the intention is to create a time sink in each chapter. I figured this out after reading the first chapter forever, then I was like "wait a second this is the concise book? how can I read the introduction forever?"

I've read the introduction part and I've seen no "time sink." I genuinely don't know what your comment means. Do you really have a hard time reading the introduction part?

I ran a part of your comment through ChatGPT, and it said you're typing on a Turkish keyboard or have it set as your language. Is this true?

I ran a part of your comment through Clause, and it said you're typing on a Hungarian keyboard or have it set as your language. Is this true?

Wait. Why? What prompted this? The phrasing?

> I always check my blood test and mrı results with ChatGPT

MRI letters


Yes, correct!

you won't believe how powerful Python is with libraries. ChatGPT and Claude made a brand new browser, that isn't based on Chromium or Firefox, and yet still follows many aspects of layout correctly. I read the article we're discussing ("stop designing languages") on this browser and I'm currently using it to post this reply.

Knowing that LLM’s have been extensively trained on public code, I wonder how much of it is based on Chromium or Firefox.

That's a good question! You can read through the entire source code for the latest version:

https://taonexus.com/publicfiles/jan2026/171toy-browser.py.t...

it doesn't look like it would be easily derived from Chromium or Firefox, because this code is Python and those don't use Python this way.

By the way is there any feature you'd like to see added to the toy browser? The goal is that one day it's a replacement for Chrome, Firefox, etc. It's being built by ChatGPT and Claude at the moment. Let me know if there are any feature ideas you have that would be cool to add.


A python-based browser? What are you using for the GUI toolkit?

>A python-based browser? What are you using for the GUI toolkit?

Great questions. 1. Yes, for the moment. Like the title of this article suggests - we're using a library! :)

It's great to iterate in Python, which has a large ecosystem of libraries. Believe it or not, there is a chance that in the future it would be able to translate the language into a different one (for example, C++) while using C++ bindings for the same gui libraries. This would speed up its actions by 40x. However, not all of the libraries used have C++ bindings so it could be harder than it looks.

2. Here's the current version of the source code:

https://taonexus.com/publicfiles/jan2026/171toy-browser.py.t...

you can have a quick read through. Originally it was using tkinter for the GUI toolkit. I believe it is still using tkinter, but the AI might be leaning on some other library. As you read it, is it using anything but tkinter for the GUI toolkit?

These libraries are doing a lot of heavy lifting, but I think it is still ending up drawing in tkinter (not handing off rendering to any other library.)


This is pretty relelevant to a project I'm working on - a new web browser not based on Chromium or Firefox.

Web browsers are extremely complex, requiring millions of lines of code in order to deal with a huge variety of Internet standards (and not just the basic ones such as HTML, JavaScript and CSS).

A while ago I wanted to see how much of this AI could get done autonomously (or with a human in the loop), you can see a ten-minute demo I posted a couple of days ago:

https://www.youtube.com/watch?v=4xdIMmrLMLo&t=42s

The source code for this is available here right now:

http://taonexus.com/publicfiles/jan2026/160toy-browser.py.tx...

It's only around 2,000 LOC so it doesn't have a lot of functionality, but it is able to make POST requests and can read some Wikipedia articles, for example. Try it out. It's very slow, unfortunately.

Let me know if you have anything you'd like to improve about it. There's also a feature requests page here: https://pollunit.com/en/polls/ahysed74t8gaktvqno100g


Took a quick glance through the code, its a pretty decent basic go at it.

i can see a few reasons for slowness - you arent using multiprocessing or threading, you might have to rework your rendering for it though. You will need to have the renderer running in a loop, re-rendering when the stack changes, and the multiprocessing/thread loop adjusting the stack as their requests finish.

Second, id recommend taking a look at existing python dom processing modules, this will allow you to use existing code and extend it to fit with your browser, you wont have to deal with finding all the ridiculous parsing edgecases. This may also speed things up a bit.

Id also recommend trying to render broken sites (save a copy, break it, see what your browser does), for the sake of completion


thank you for your quick code review and for these many helpful tips! I'll take a look at them and see what I can put into practice.

EDIT: Unfortunately, it seems that the code is getting near the limit of the context window for Claude, so I'm not able to add several of the feature suggestions you added with the present approach. I'll look into breaking it up into multiple smaller files and see if I can do any better.


If you're interested in Python web browsers, may I suggest you take a look at Grail?

https://grail.sourceforge.net/


sent you an email! :)

sent you an email :)

Just a note that you'll want to use the updated link, because the flies weren't able to navigate the more complicated maze - or at least, I couldn't get them to using the hyperparameters I tried.

updated link: https://claude.ai/public/artifacts/5f7017c8-98fb-4d89-a32c-1...


I was wondering if the issue there is maybe the fitness function - the flies can get a higher fitness by avoiding the maze entrance early on by just heading straight up and early attempts to go into the maze early on will result in lower fitness.

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

Search: