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

>Also, there should be more ways to "praise" a project.

Maybe github should implement a "feedback" tab where people can post their experiences of using the project. Perhaps some of those experiences would be negative too, but it would also allow people to give you neutral or positive feedback on what they like about the project, how they are using it, and what they have achieved with it.


I would encourage all developers to download a Commodore 64 emulator and spend some time learning 6502 assembly.

There is no memory protection and no software abstractions. You display graphics on the screen by writing directly to video memory.

Programming for the C64 made me have innumerable lightbulb moments and significantly changed my perspective on what a computer really is.


> There is no memory protection and no software abstractions. You display graphics on the screen by writing directly to video memory

You can have similar experience with a little more power by writing code in mode 13h for dos. Want to light a pixel with specific color? Change byte of memory at A000 + y*320+x :).

You have 256 colors, every pixel is a byte, and you have another place in memory where it says what each color number maps to in rgb values. So you can do palette animations trivially.

There is no easier way to program graphic IMHO.

You can use any language - my favorite was Turbo Pascal 7 (but the compiler has a bug that breaks on cpus with over 200 MHz clock - you need to download turbo pascal and a patch that fixes this issue for example https://www.trsek.com/download/T7tplfix.zip ).


> There is no easier way to program graphic IMHO.

You might enjoy https://github.com/kragen/bubbleos/blob/master/yeso.

    /* Munching squares, generalized to TrueColor. */

    #include <yeso.h>

    int main()
    {
      ywin w = yw_open("munching squares", yp_p(1024, 1024), "");

      for (int t = 0;; t++) {
        ypic fb = yw_frame(w);
        for (int y = 0; y < fb.size.y; y++) {
          ypix *p = yp_line(fb, y);
          for (int x = 0; x < fb.size.x; x++) p[x] = (t & 1023) - ((x ^ y) & 1023);
        }

        yw_flip(w);
      }
    }
I think that, in terms of accessibility, these 14 lines of C compare favorably to the 15 instructions (and one assembler directive) in the 31-byte mode-X demo Klappquadrat, for example. Yeso also has Lua and Python bindings, which are somewhat incomplete. I haven't written Pascal bindings for it yet, but feel free.

On the other hand, that won't give you the same kind of satori experience as the bare-metal C64 experience, because Yeso is running on top of some arbitrary stack of software you don't understand, and the C64 VIC (or VGA mode 13h, at least if you're using a real VGA) is really just circuits. Using Yeso won't stop you from feeling that what's behind the library calls is magic.


C64 was my first computer (got it as a first communion gift in 1992) and I remember typing in programs from a German manual which nobody understood watching what they will do.

I also remember that I couldn't make graphic programs do anything, I only played with SID and commodore-ascii graphic. Somehow all the programs from the manual with sprites didn't do anything when I typed them in. I had no internet back then and it was a big deal for me. So big I remember it to this day :)

I remember I thought they misprinted the pokev adress so I did a for loop that put the things they wanted me to poke into any adress in a for loop, but that didn't worked either. I still have that C64 and I WILL at some point find out what was the problem :)




Any recommendations for books/tutorials/videos or other starting points? I don't know any assembly but wanted to learn 6502 assembly because of how ubiquitous it was in lots of older systems (2600, NES, Apple II, and of course C64 among others). That SMB 3 speed run [1] really blew my mind and made me want to learn more.

[1] https://news.ycombinator.com/item?id=24456247


I think programmers need to start taking a lot more responsibility for what we release into the world.

If you don't think your software solves a real problem, or will improve people's quality of life, then why release it?

There are already too many distractions in the modern world. I don't want to create more. Any software you release that doesn't solve a real problem is just another distraction that takes time away from people's lives.


To decorate CV.


>Google hands over data of criminals to law enforcement

What is the story here?


Technically if you’re being investigated and the companies hand over your info, you may not be a criminal at that point. You remember the concept we had for hundreds of years that people are presumed innocent until found guilty by a jury of their peers.

Also, for hundreds of years, police could not just nicely ask a third party to turn over all of your data, at least at the scale of something like the data google keeps on everyone.

I’m amazed by the number of people apparently just fine with this being the norm.


People are fine with police overstepping as long as they aren't in the crosshairs.

Usually, even non paranoid people become staunch privacy advocates once they had to fight the system after their data was abused.


For hundreds of years police could just nicely ask a third party to turn over all your data - by simply going in and asking what they wanted to know - and proprietors often just did tell all they knew or had recorded. If the third party would refuse and police would demand that they comply, then they'd need a warrant, but nicely asking has always been an option during an investigation.


I am greatly opposed to mass surveillance, especially when justified by some immaterial bogeyman such as "stopping terrorism".

However in this case, illegal immigration is a legitimate problem in the US with actual statistics to prove so, and it seems that they are only targetting individuals that they actually suspect of being criminals.

If law enforcement has genuine belief that I am a criminal then why would I be opposed to giving them data to absolve myself?

And yes of course this has the potential to be abused, but is there any proof of this in the article? It seems like one specific individual was targetted, and they had the courtesy to notify them that this was happening.


They are looking for 1 criminal so they took data of a 1,000 people?

Is it cool for police to seize property of thousands of people just because someone somewhere might have commited a crime?

Because then your property can be seized at any time without reason, there is always some crime somewhere nearby.


You are just making this up. Nowhere in the article is there any mention of them requesting data of 1,000 users to find one criminal.

What the article actually says:

>From January 2020 to June 2020, Google received nearly 40,000 requests for user information from law enforcement

There were 185,884 deportations by ICE last year, which is around 92,942 in the same time period. They are making 0.5 requests for information for every person they deport.


You are assuming that each request is for information on 1 person, when in fact it is quite common to ask for all persons having some identifiable characteristic, such as a geofenced location or using certain search terms.


>calls for the killing of babies if they where jewish, black etc.

How is this in any way equivalent? Being jewish or black are not disabilities. Downs syndrome is a horrible condition that greatly impacts your quality of life.

I personally think abortion is horrible, but aborting babies who are going to enter life with awful disabilities is the least objectionable form of abortion there is.

You should be outraged at the millions of perfectly healthy babies that are aborted every year just for convenience. Not this.


>Downs syndrome is a horrible condition that greatly impacts your quality of life.

I disagree. Have you ever met one person with that condition?

The ones I've met, are happier than 99% of the people I know.


Maybe you should tell that to rms instead of throwing anecdata at people who disagree with you.


> Downs syndrome is a horrible condition that greatly impacts your quality of life.

People with DS frequently report greater life satisfaction that people without DS. The problem isn't DS, it's how people with DS get treated by the rest of society that's a problem.


When I looked into doing this before I think the ultimate issue was that the C specification doesn't even give you any way to check the overflow flag.

So even if you knew your specific C implementation handled overflow properly there is no way to check the flag afterwards anyway.


This is scary to think about.

The upside of third-party trackers is that you can completely block all of them by just blocking third-party javascript. What are we going to do once all of this tracking code starts getting served from the first party domain instead? Or even served inside the same source files as site code?

I imagine we will start seeing a new class of privacy extensions that behave more like anti-virus. Checking for known hashes of tracking scripts, monitoring for certain patterns of behaviour during execution.


The future is entirely server-side tracking, with no JavaScript executed in the client unless for UX tracking like Hotjar or A/B testing like Target or Optimize.

Personally, I haven't seen a desire in companies to skirt GDPR. Rather companies just want to be compliant and not have to worry about data breaches or reputational damage from their marketing tools. This example with Backblaze is exactly what companies are trying to avoid.


>goes to show you have to encrypt EVERYTHING at rest, even file names

Or just block all third-party javascript.

Facebook code shouldn't be running anywhere aside from facebook.com


Tracking is not ethical. Corporations only get away with it because most users don't realise it's even happening.

If you went into a retail store and an employee followed you around the whole time with a notebook and stopwatch writing down everywhere you walked and every product you looked at, you would rightly be creeped the fuck out and tell him to stop.

This is exactly what online tracking is, but done virtually.


> If you went into a retail store and an employee followed you around the whole time with a notebook and stopwatch writing down everywhere you walked and every product you looked at

I hate to break it to you, but retail companies are doing this today using security camera footage, to figure out what parts of the store customers start at, or spend the most time in..


They're also doing it with Bluetooth beacons / pings, explaining why every store has an app they want you to install:

https://www.nytimes.com/interactive/2019/06/14/opinion/bluet...


This is one of key applications of GDPR in Europe - the fact that you can collect data for one purpose (e.g. security cameras) does not necessarily imply that you're permitted to use the same data for any other purpose (e.g. marketing analysis of customer movements).

For the former purpose, it would generally be sufficient to inform visitors with a sign on the entrance with legitimate interest clause; for the latter example IMHO the only practical compliant solution would require anonymization of the data, so you could make and store density data iff you don't have any way to tie them back to customer identities including the purchases they made, which is a key difference from the facebook example, which (as far as I understand) uses unique IDs to link the conversions to specific FB accounts.


The difference is that with a human near by I feel like I am being judged and when they are not I do not feel that kind of pressure. The grocery store I've gone to my whole life has always had security cameras tracking people for reasons I assume to deal with theft. It does not effect me at all and the store has useful data that they can use. It benefits all parties.


>The difference is that with a human near by I feel like I am being judged and when they are not I do not feel that kind of pressure

I will offer you another perspective to consider.

Technology is extremely subversive in that it bypasses all of our brain's instinctual responses. Someone or something monitoring and tracking you should be setting off warning sirens in your brain. At best they are trying to study you, at worse they are trying to exploit or harm you.

Through hundreds of thousands of years of evolution our brains have built up warning systems to make us feel fear and unease when we realise we are being tracked. But since humans have spent 99.99% of evolution entirely in the physical world these systems have no concept of the digital.

The reason you feel extremely uneasy when being monitored by a person, but not when being monitored by a computer system that is collecting the exact same information (or more), is that your subconscious brain doesn't understand computers.


>our brains have built up warning systems to make us feel fear and unease when we realise we are being tracked

>The reason you feel extremely uneasy when being monitored by a person

I don't though. If someone walked up to me and asked me what my favorite color was and they wrote it down I don't feel any negative feeling.

Even if it was a true thing just because we have a warning system that doesn't mean that something is actually bad. Tracking just gives people more information to allow for better decisions to be made and it can make things more efficient.


As a white dude, I feel extremely proud because my ancestors abolished slavery.

Oh wait no I don't, because feeling shame or accomplishment for something your ancestors did hundreds of years ago that you had zero control over is a completely ridiculous concept.


I don't understand how that little line could be so misinterpreted so wrong. I'm not ashamed of being white, I'm ashamed of asshats running around gunning for cheap SJW points while ignoring the real issues. We can do better. Master/slave, blacklist/whitelist etc has no relation to race at all so it's a completely pointless act. But instead this is taking center stage just so people can post "feelgood" LinkedIn/Twitter posts to make them feel better about themselves, or company PR blog posts like GitHub and GitLab while doing nothing to change the actual status quo.


What gives you the right to feel ashamed on behalf of someone else's actions, just because you're of the same race as them? Shame on you, virtue-chaser.


As someone whose ancestors annihlated his other ancestors I'm not proud at all, nor do I feel guilt. It's a tragedy as old as human history. We can't forget those horrible things, but we can't bury them either, we are an imperfect species and we have to live with it. Burying words under a rug doesn't fix anything, only diligence and real egalitarianism will.


Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

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

Search: