HNHacker News
TopNewBestAskShowJobs

vitorfs

105 karma · joined April 16, 2013

https://www.simpleisbetterthancomplex.com
submissionscomments
vitorfs··on The AWS Console is mostly down
Our infra is all on us-east-1.

Our EC2s seems to be working fine. But RDS is down for us.

vitorfs··on m.u.g.e.n. 2D Fighting Game Engine
The DBZ chars were my favorites. I have some good memories of playing it for hours with my friends as well. We used to share the same keyboard to play. The first player would use the arrow keys + page up/down home/end etc and the second player would use YGHJ as the arrow keys + QWEASD as the main buttons to play.
vitorfs··on m.u.g.e.n. 2D Fighting Game Engine
This thread brought many memories. Like others here, Mugen was my first experience with something that looked/felt like programming. I think I was 11 years old or something.

I remember that I was obsessed with Mugen. I would spend hours downloading chars/stages/screen packs and making my own games combinations. Eventually I started messing around with the source code of the chars/stages etc and started to learn on my own. I never really learned how to build chars properly, but I was good with the screen packs and stages.

Something that I find amusing is that some of the screen packs that I ripped from NeoGeo games and adapted for Mugen 20+ years ago are still available and I guess some people still use them :-)

Two cool works I did was ripping the Real Bout Fatal Fury 2 [1] and KOF'96 [2] screen pack. I even found some videos on YouTube. One of those videos the person who uploaded the demo even gave me the credits after all these years. The second one there was no mention but I know for sure this is my version because of the quirks/bugs :-) I never knew how to properly align the numbers with the texts on the combo/hits sprite messages that are shown during combat haha

[1] https://www.youtube.com/watch?v=AXecBx9oLrI

[2] https://www.youtube.com/watch?v=DcZBoTt6DEU

vitorfs··on Django: Reformatted code with Black
I have always used single quotes for Python code since I start working with it. When I started to adopt Black on my projects it indeed felt weird and the code looked unpleasant. But after a while you get used to it.

Some people make the case that it's easier to write single quotes (well, depending on the keyboard format anyway). For keyboards in the US standard you have to hold the Shift key to write a double quote. But the good thing about Black is that you can still write your code using single quote and when you run the command line utility it will fix/normalize the code to use double quotes.

Nowadays I got so used to it that I even write my Python code using double quotes. And looking at Python code using single quotes looks weird/unpleasant for me.

vitorfs··on Django: Reformatted code with Black
This is such a great news. We've been using Black in the company that I work for the past 3 years or so and it was a game changer for code reviews. Hopefully other open source Python/Django projects will follow the lead.
vitorfs··on Awesome-loginless: internet services that don't require registrations
My favorite free/loginless tool is https://excalidraw.com/ I use it on a daily basis to quickly sketch some ideas and document features etc
vitorfs··on Revenge Bedtime Procrastination
It's 3 am and I'm currently doing just that. It's the moment where the world stops for a couple of hours and no one expects anything from me. My phone is not going to ring, no one is going to send me an email or expect an answer. It's weirdly peaceful
vitorfs··on Django for Startup Founders: A better software architecture for SaaS startups
I actually like the Django ORM. Something that I learned working with Django 8+ years is that to use its ORM effectively, you have to play Django's game. Sometimes just by denormalizing a few fields will make some queries/relationships way easier.

At work we have a marketplace engine and a digital wallet/financial app built entirely with Django (100k+ loc) and we don't have a single raw SQL query, everything is done with the Django ORM.

vitorfs··on DigitalOcean is removing most referral credits that you may have accumulated
I'm about to lose $4,800 in credits from Digital Ocean. I've been promoting them on my blog for the past 5 years or so

Something that I found weird is that they mentioned on the email I received:

> Please note that since all of your referral credits were issued more than 12 months ago, they will all expire starting next week.

Either the wording is odd or it's just my interpretation, but from what I understood they are implying that all my credits are older than 12 months

But the thing is I have several credits issued this year:

May 06, 2021 April 07, 2021 March 08, 2021 February 02, 2021 January 08, 2021

Or they consume the credits from newer to older.

vitorfs··on Blog with Markdown and Git, and degrade gracefully through time
that's a good point and I agree with you

to be honest jekyll still serves the purpose really well (especially for the reader)

the site is still sitting on an inexpensive entry-level cloud server, it's relatively fast, serves 300k+ page views every month and it give me some passive income

i'm pretty sure that if one uses the framework properly it can still hold on very well

i think what left me with a mixed feeling about static site generators is that it is constantly holding you back whenever you think about growing your website. i ended up building a django api that runs on the same vpc as the blog itself, and i used it to expand some features, like reading from google analytics the total page views for a given blog post, or consuming the disqus api to list the latest comments on the home page. this kind of thing.

managing the posts in static files is quite challenging as the number of posts grows. at some point you will want to change some info, or add a certain metadata and you will need to write a script to walk the _posts dir and edit the files (maybe there's a better way of doing that :P)

vitorfs··on Blog with Markdown and Git, and degrade gracefully through time
hey, thanks! :D
vitorfs··on Blog with Markdown and Git, and degrade gracefully through time
yes because of a bad design decision I made to create a custom "related posts", which is a code that searches all my markdowns to pick the best pages and add to the current page. so even with `--incremental` it take quite some time to regenerate
vitorfs··on Blog with Markdown and Git, and degrade gracefully through time
I started my blog about python/django (https://simpleisbetterthancomplex.com) using Jekyll and hosting on Github Pages and it was pretty good to get started because back then I wasn't sure if I would keep it up or not.

After a year or so I migrated to a 5 USD droplet on Digital Ocean (back then GH Pages didn't offer https for custom domains) and integrated with Github webhooks to automate the deployment when pushing new markdown to the main branch.

Over the time it indeed started to degrade. The build time takes almost a minute, but after building the website is just a bunch of static html pages.

Nowadays it is annoying to write new posts because I like to write locally and refresh to browser to check if it's looking good or not. So I would say it degraded for me but for the reader it's still as fast as it was when there was just a couple of posts.

I thought about migrating the blog to something else, but because I used some custom markdown extensions for code highlight and other things, it would be painful to migrate all the blog posts. So I've been postponing it since 2019.

vitorfs··on Oatly: The New Coke?
I lived in Finland for 5 years and it is very common there. I've seen people drinking milk at pizza place for example, like 300ml~ cups. Also at the University's cafeteria during lunch time students would drink pure milk with their meal.
vitorfs··on Apple has pushed a silent Mac update to remove hidden Zoom web server
It's also on macOS license agreement:

"By using the Apple Software, you agree that Apple may download and install automatic updates onto your computer and your peripheral devices. You can turn off automatic updates altogether at any time by changing the automatic updates settings found within System Preferences."

vitorfs··on Subscribers are the new, new thing in business
I had the same issue with NYT. I find it terrible services that doesn't allow you to cancel subscription without talking to someone.

PayPal is a great option for services that support it. At least you can cancel whenever you want.

One of the banks I work with let you create a virtual credit card number associated with your physical credit card. You can remove it and create a new one at any time, without having to request a new physical card. So I try to use it strategically nowadays. In the worst case, I just cancel the virtual card.

vitorfs··on The dots do matter: how to scam a Gmail user
Something very similar happened to me because of the whole dot issue and Netflix not verifying their customer's email addresses (double opt-in). Someone created a Netflix account using a dot-variant of my Gmail and at some point, I received a similar email asking me to update my payment info. Right from the email, I saw it wasn't my account and thought someone else used my email by mistake (this happens a lot to me because I have a common name and a short email address).

What I usually do is request a password reset and delete the account or just remove my email address from the account. But in the Netflix case, the "update payment" button on the email log you to the account without asking for the password or anything. For the most part, people sign up to junk services/games or is just creating a throwaway account. But this was looking like a legit mistake. This person was actually using the Netflix account and had the payment info there and everything. I tried to just change the email address to something else but it required to confirm the password to change the email. I could just request a new password and change the email, but I was trying to be careful here because I didn't want to screw this person. I started to investigate a little bit more. Maybe this person had the account connected to Facebook, so it would be okay to change the password and remove my email and the account owner would still be able to log in. But it wasn't the case. I checked the watch history, just Peppa Pig and movies for kids. The name in the account was a female name. Probably a mom that created a Netflix account for her child. At this point, I was feeling super guilt to remove my email address and lock this person out of the account. All I could think of was a monday morning, the password not working, the kid crying out loud, the mom trying to figure it out. Anyway, I was just trying to not cause someone trouble.

So I thought about trying to find this person on Facebook or something. She had a not very common name so it shouldn't be hard. The payment method on Netflix was direct debit, so I had her bank account number. From the bank account number, I got the number of the bank's agency, and a quick google I discovered in which city her bank's agency was located, so it made the Facebook search very precise. There I was looking at her Facebook page. The profile picture it was a happy family of three: mom, dad, and the little child. Browsing a little bit her public feed I learned that her kid had my name (Vitor) and that explained why the account name had her name and the email address was a different name (her kid). So, either she created an email address for a 1-2 years old and mistyped it, or she just typed whatever email and created the account. The second option seemed more plausible. In any case, she seemed pretty much clueless and I thought about how to approach this and explain to her what was going on. So, I started to write a message... but it sort of started to sound weird/creepy, like how I got her contacts, and I was worried that she was going to think I was trying to scam her or something, so I gave up and said whatever. I still receive her (I mean, her kid's) movies recommendations.

vitorfs··on Bootcamp, an open-source enterprise social network
yup! i will do that! for now, the link you found on the github repository is just for test purpose, so feel free to create an random account with a fake email account just to try it out :)
vitorfs··on Bootcamp, an open-source enterprise social network
actually im new on django hehe i will take a look on this project as it seem to be a interesting approach
vitorfs··on Bootcamp, an open-source enterprise social network
hm im not so sure. but if we plan to use a single to instance of bootcamp, and companies can use it as a service, signing up their companies and using a single infra, that would be thousands of networks on the same database maybe a nosql db would be better? i am not really an database expert to make this sort of analysis hehe.. never really worked with huge amount of data, like twitter and facebook for example

i mean, im not so sure if a relational database would be the best option

vitorfs··on Bootcamp, an open-source enterprise social network
oh! i have to update the readme ;)

actually as i used django framework (which is database agnostic), on my development env i use sqlite3 and on production im using postgresql

so you can pretty much use any database that django supports.

in fact, for a large scale usage postgresql would not be enough... but for using inside a company intranet, with a few users i think it is alright for now

vitorfs··on Bootcamp, an open-source enterprise social network
yup!
vitorfs··on Bootcamp, an open-source enterprise social network
it means that the network is meant to be used inside a company, to our developer team/systems analysts/testers interact about things that have to do with our work

like sharing an interesting link, a new library, sharing nice solutions, writing an article about how to use some new stuff on primefaces for example and so on

vitorfs··on Bootcamp, an open-source enterprise social network
actually the link trybootcamp.vitorfs.com is just to try out the application, so people can see it running

it is meant to be used on the company network, setting ALLOWED_SIGNUP_DOMAIN = ['@example.com']

the idea is to make our developer team to interact more