ComputerScientist
174 subscribers
14 photos
3 files
206 links
▜ The Inventor

Stuff that inspire you to create.

See also: ▙ @LitMind
Download Telegram
Junior developer: "I found the bug"
Senior developer: "I found a bug"
“All our knowledge begins with the senses, proceeds then to the understanding, and ends with reason. There is nothing higher than reason.”
— Immanuel Kant
“I don't believe in the sort of eureka moment idea. I think it's a myth. I'm very suspicious that actually Archimedes had been thinking about that problem for a long time. And it wasn't that suddenly it came to him.”
— Tim Berners-Lee
“I am on the verge of mysteries and the veil is getting thinner and thinner. The nights seem to me too long... I am often scolded by Madame Pasteur, but I tell her I shall lead her to fame.”
— Louis Pasteur
“Intuition becomes increasingly valuable in the new information society precisely because there is so much data.”
— John Naisbitt
Let the age of approximations be over. Stop formulating the reality with the ironically named "real" numbers. Existence is discrete in every way. Continuity is an impossibility. Even Democritus knew this.
To be fair, Zeno was the one who beat his intellect into submission.
A machine that would be left dormant forever without human intervention is not truly intelligent.

Data must be meaningful for the machine, not [just] meaningful to us.

Said meaning must be communicate-able among several separate subjects, to ensure its evolution and prevent its corruption.
2⁸
Most features in languages are solutions to problems that could've been avoided entirely.
Programming means writing a program;
meta-programming means writing a program that writes a program, possibly itself.
Ideally, mental datatypes such as text comprising natural language, pictures and sounds, will be transferrable among people.
“Classes will dull your mind, destroy the potential for authentic creativity.”
— John Nash, A Beautiful Mind (2001)
🦾
You cannot control what you cannot see [or feel].

You cannot send meaningful input to what from which you cannot recieve meaningful output.
instance place vs. place meeting

Having merged and summarized the information found in the documentations of both GMS1.3 and GM8, I've prepared the following comparison. In the end you will find that they are both the same rountine, only they return different things. According to the documentation of GMS1.3, place_meeting is slightly faster than instance_place.

These functions let you check a position for a collision against some object, using the collision mask of the current instance. These effectively move the instance to the new position, check for a collision, move it back and tell you if a collision was found or not.

These will work for precise collisions, but only if both the instance and the object being checked for have precise collision masks selected otherwise only bounding box collisions are applied.

// place_meeting(x, y, obj) returns whether the instance placed at position (x, y) meets obj

if keyboard_check(vk_left) if not place_meeting(x-5, y, wall) then x -= 5


// instance_place(x, y, obj) returns some obj, or noone, met when the current instance is placed at position (x, y)

with instance_place(x, y, enemy) {
other.hitpoints -= damage
instance_destroy()
}


In both, obj can be an object, an instance, all, or other; however the documentation on GM8 lacks allowing other for obj in instance_place
When a program is being stupid, i.e. acts against common sense, resolve the issue by asking yourself how you know, that which you know. How is the issue ridiculously obvious to you? Implement a copy of the same thinking pattern into your program. That's all high level programming is about.
“...There are many people who blog and otherwise publicly discuss development methodologies and what they're working on, but there are even more people who don't. Blogging takes time, for example, and not everyone enjoys it. Other people are working on commercial products and can't divulge the inner workings of their code.

That [sic] we're unable to learn from the silent majority of experts casts an unusual light upon online discussions. Just because looking down your nose at C++ or Perl is the popular opinion doesn't mean that those languages aren't being used by very smart folks to build amazing, finely crafted software. An appealing theory that gets frantically upvoted may have well-understood but non-obvious drawbacks. All we're seeing is an intersection of the people working on interesting things and who like to write about it—and that's not the whole story.”

— James Hague, The Silent Majority of Experts
When one gets so immersed in the theoretical that they forget how wonderful it is to make amazing and useful things, these things may help them recover:

Be practical: stay out of technical forums unless it's directly relevant to something you're working on.

Do: work on real projects related to your area of interest.

• If you hate a technology, learn and use it.

• If you love a technology, don't insist that everyone else use it too.

Create experiences: Be more of an experience designer than a software engineer. Focus on the beauty of the end result rather than the beauty of its code.

• Make some kind of art.

• Read all kinds of stuff.

— Summary of Recovering From a Computer Science Education