HNHacker News
TopNewBestAskShowJobs

benstopics

393 karma · joined September 5, 2022

submissionscomments
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
a) At the time it was impossible for me. I think I could actually do it now. But now that I can read the BASIC... what would be the point? If I wanted it cross platform, I will build a virtual machine. b) Claude Code has performed exceptionally well. I haven't tried the most recent Codex update. But I don't see the point in spending thousands of dollars on tokens to rewrite it when it works perfectly fine. It would be much cheaper to have Claude Agent build the virtual machine. That's just my opinion. If it ain't broke don't fix it I guess. I do want to bring it to mobile though, whether that's a phone app or responsive website.
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
Sorry I am slow! I do it on the side so. Bear with me. I try to market and post updates when I can. Even this onslaught of comments from hitting frontpage is overwhelming but I am trying to be gratious and respond to everyone!
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
A magician never reveals his secret...
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
I am definitely sharing this with Michael he will be happy to be pushed down in the dinosaur ranking!
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
I figured the engineering crowd here would enjoy the technical journey and I am so grateful it got to front page so that I may talk about the technical side which I enjoy doing. I am not a hermit by nature and posting on HN really was a cry for someone to ask me a question about the backend. So I really appreciate all the technical questions gives me an opportunity to get into the weeds a bit.
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
That is almost entirely true and yes it's a click baity title, and it worked ha!
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
The reason I discovered options prices were wrong is because for fun I created an In-The-Money visualization graph for when you're doing advanced options spreads and I noticed that the graph was asymetrical and profitability and loss made no sense. So with the help of Claude we debugged the code and came up with a pricing strategy that was closer to Black-Scholes. And it really is because it takes into account industry volatility and such it was a fun side quest and Michael is happy with the result which I am very proud of! It really makes me confident that one day, long live the king but, he is in his 80s. Decades from now I will be able to survive on my own, I hope.
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
Options pricing was not correct, which MJ knew because he simply based it on lookup table using ratios of a spread on a random security in his brokerage account decades ago! I tried to implement Black-Scholes best I could, my one contribution to the engine thus far. MJ has patched several things such as runaway interest rates and commodity prices, too-easy crypto price movements. Typos here and there. Certain edge cases that only a highly skilled player would ever come across, which due to the Discord server brought those players out of the woodwork to battle harden the game and a place for them to report the things they always knew but never had the motivation to report. But for the most part the engine is pretty damn solid.
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
Not impossible but a lot of work. But with Custom Data API and Set Game State API you can do a lot of what you may wish you could do from modding the frontend. Not ideal but it goes from impossible to a possible!
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
I would love to do this. I do plan to code a PowerBasic virtual machine in order to make the game cross platform which would allow for a future with Wall Street Raider Online because my true dream? I want to play it on my phone!
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
I do think it is possible with the advent of Claude Agent to transpile the code. First I would refactor the trampoline system to be functional and unit test everything. Then I would use those tests to validate the transpilation. It's something that I would consider doing for a Wall Street Raider 2 to overhaul the engine and deliver massive improvements to the engine itself. I do want to do this to a certain extent to implement automated e2e testing. But I don't mind BASIC at all, prefer it actually, I just want automated testing set up. But a lot of this is beyond the scope of my goals for Early Access release.
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
Claude actually! Yeah the content editing was heavily LLM assisted as I'm a terrible writer and I wanted the read to be enjoyable. So I compiled all the research and worked with Claude to build the article. I then attempted to go through with a fine tooth comb and write it in my own words. That is one particular sentence I missed with a highly recognizable LLM pattern which I will fix. I simply also don't have time to really market the game, I care more about the quality of the software. I know if the software is great then it will be successful. But I wanted to share the story in a compelling way. Apologies if it was distracting!
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
That is a really good idea. I totally forgot to include the link in that part of the story. I will definitely be making that change! Well, here is the one I think you are referring to: https://www.reddit.com/r/tycoon/s/bzjG709MLB
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
Others attempted to build from scratch or port it without the original developer's involvement. I worked directly with Michael and built a bridge layer into his existing codebase rather than rewriting it.
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
Thank you sir and I'm glad you enjoyed the story! I hope it's successful but we will see.
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
I'm sorry what is the question?
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
I am working with Michael to remaster it. He transferred the domain name to me and I just redid the website. I'm not sure when the last time he updated Roninsoft website, but he has "retired" from working on WSR, although has been a huge help with the remaster. https://www.roninsoft.com/#:~:text=!!!%20Check%20out%20WallS...
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
You're damn right we can.
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
You're welcome!
benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
I built an FFI via event dispatching and shared memory pointers/matching structs. Imported the C++ UI layer as a DLL via Win32 LoadLibrary. The PB shares a big array for storing global pointers allowing them to read/write each other's memory. The C++ has an event queue and has DLL functions the PB can call to peek/pop the next event. It actually isn't that complicated, just took me forever to come up with the idea.

As for languages, PB, C++, and JavaScript (Electron/Preact). I chose a no-build UI framework so that it could be modded by players without installing any build tools, just edit the text files in the game folder, and it has been a very good decision.

benstopics··on Show HN: I spent 3 years reverse-engineering a 40 yo stock market sim from 1986
If I can't get a response from a publisher here soon, I will be setting an Early Access release date of 1-2 months from now to give me some time to build up more wishlists before I pull the trigger.
benstopics··on Show HN: I built a tool to visualize MRR
this is so cool.

fyi when i try to clear the input boxes I can't get rid of the leading zero.

benstopics··on Show HN: Weejur – micro-blog from your email account
I think a pin number might be an easy solution. Just sign with #1234 at the bottom of the email.
benstopics··on Show HN: Weejur – micro-blog from your email account
Does it just post to the correct page based on the from email? If so, how do you protect against email spoofing?
benstopics··on Show HN: Follow-up “With a 9-5 job and 2 kids I finally finished my first MVP”
I also use MRP (Minimum Remarkable Product) as in, your product has at least one feature that is of value to someone.
benstopics··on Show HN: Calculate how much time, CO2, and money you saved since you went remote
This is cool. Apparently I’ve saved over $1500 and 370 hours of drive time since WFH of March 2020. I also can speak cat now.
benstopics··on Yak Shaving: A Short Lesson on Staying Focused (2018)
I understand where you’re coming from. I would argue that if the amount of refactoring required to make the bug clear takes that much longer, then all the more reason it should be prioritized. This is really the purest definition of tech debt, because there may be other bugs present in the code you are unaware of. This is assuming no tests cover the bug, because if they did, it wouldn’t have made it into production. Honestly you should be doing it all, because you have to understand the full scope of the issue to properly fix the bug, test it to prevent regression, and in order to test it it must be testable. So I would say if there are no tests, and it is not testable code, the least amount of refactoring you should do is make it testable. You actually don’t even have to write the test if you really want to cut corners. Just through single responsibility principle, dependency injection, and writing code that could be tested is enough to bring it 90% the way there. You can even break the dependencies and theoretically as long as you don’t violate the interface the functions you refactored should hold up. The simpler and more broken down the code is, it gets to the point where you say, this function has one if statement and two return statements, writing a test is actually redundant compared to the code. If it’s not mission critical code, you can really cut corners, if you’re in a hurry…
benstopics··on Yak Shaving: A Short Lesson on Staying Focused (2018)
“ Never fix a bug and refactor in the same pull request.”

I’m sorry, but this is backwards. Bugs are many times caused by badly written code and you can tell when it’s the case. Refactoring the code many times fixes the issue without ever having to figure out where the needle was in the haystack.

I guess in every field there are platitudes and prescriptions. At the end of the day, I try to follow first principles and ignore them and just focus on building a great product.

What I see in this article is a disregard for the costs associated with context switching. My argument is, if you think you can handle the rabbit hole, and you think those related tasks will need to be done anyway at some point, head off to Wonderland. Because you have the context of the situation fresh in your temporary memory, so you’ll get it done faster than if you switch contexts and come back later.

benstopics··on Show HN: Ducks, the Python Object Indexer
Thanks for building this. The speed boost is pretty insane, this would actually be great for an API layer for performing multiple operations on large query results in memory to reduce requests to the database. I imagine you could add a simple condition to use ducks if the array size exceeds a certain length.

Also, kudos for snagging the ducks pypi slug. I can’t believe that was available.

benstopics··on Show HN: Scrib.am, my encyclopedia, inspired by Diderot. One article per day
This is an interesting concept. Reminds me of changingminds.org which I am guilty for reading hundreds of his pages.

An idea I had was a way to login and keep track of what pages you’ve already read or how many times you’ve read them so you could rank your favorite articles and revisit them as a refresher.

← PreviousPage 2 of 3Next →