HN user

estevaoam

106 karma

Software engineer.

Posts2
Comments32
View on HN

I agree. The main function of a component should describe what it does, similar to describing the algorithm in natural language. I have been following this pattern with success. It is much easier to understand things at a glance.

As if one's market value is always coherent with their skills. There are so many variables that plays a role on how much one earns: where you live, negotiation skills, marketing skills, getting competent people to evaluate you properly, micro and macro economics, willingness to deal with bullshit corporate stuff, etc.

Sorry, I didn’t want to sound too sarcastic and negative: I don’t disagree with you. But looking from a broader timescale it is clear that in general we’re speeding up our technological progress in a logarithmic scale.

I have been following closely the NLP field for over a decade and the progress is speeding up. Can it stall? Sure. But everything is pointing out that it won’t.

Why most people are blind to the most important point of those models: the progress is moving at astonishing pace.

IMO it is a useless discussion to debate about the current SOTA or economics. In two years we will certainly have some breakthrough as we have been seen for the past years. And things are speeding up.

edit: typo.

Being honest, I am not that much concerned with what can I do as individual. If sh*t hits the fan we’re going to have to solve this at societal level, not individual.

As others already put out there: if society collapses heavily due to displacement of labour, money won’t matter much.

Unless advanced AIs are used to build weapons for those who own the capital, nothing can hold off angry mobs everywhere.

When we get to the point where human labour in general can be easily automated, that’s when capitalism like we know must be buried. We must find another way to live and prosper on this planet.

Innovation is really a weird thing. If we could show ChatGPT to people 10, 20 years ago I'm certain most people would be amazed by this technology.

Today, lots of people heavily criticize its limitations and thinks 40 bucks/mo is too much for this kind of tech.

Reminds me about newspapers headlines being skeptical when light bulb started being sold for the first time. 99% people seems to be fundamentally conservative and can't grasp innovation properly, nor understand the fast pace of evolution some things can have.

Not saying this is good or bad, just an interesting phenomenon to observe.

I agree with you. I also think it is useful to understand limits. This is not what I’m arguing against, it is affirming limits without the knowledge to do so. Until we don’t really figure out how our intelligence works we can’t say we can’t reproduce it algorithmically.

We can find plenty of examples where engineering advanced beyond our understanding: bridges, boats, tables, etc. When humanity started building those we didn’t have the full picture of our physics yet we build and used those for more than 1000s years.

Again, I’m not saying we can’t engineer something from knowledge, I’m saying we can’t affirm limits onto something we don’t fully understand yet.

IMHO this paper is speculative and biased towards our human intelligence. From all the advances I have seen so far in the AI landscape, I’m growing more and more skeptic that our intelligence is something so complex that we can’t replicate.

Sorry but your argument doesn’t make sense. Engineering/building is different than understanding how things works. Surely is related: if you build something you usually can learn how things work - and vice-versa.

Insane to me is to affirm that something has a limit when you don’t fully understand it.

I do think high frequency rate monitors are a gimmick

Do you mean refresh rate? If yes, I used to think that but couldn’t be more wrong. Nowadays I have a 144hz monitor and I’m considering even going >240hz.

If you have the gear to push that much fps it’s a night day difference.

I Will Write More 4 years ago

I agree with you. I don’t understand why some people get annoyed about this. Any desired life change starts with goal setting.

Easy to say “just do what you’re supposed to do” as if that phrase by itself had magic powers. It is known that motivation and habit is a fairly complex process, so I don’t get why we still get such reductionist comments around here.

We need more empathy and less criticism toward others, specially when they’re trying to improve themselves.

Interesting, we used Taiga long time ago (5 years?) and honestly it was too simple to what we needed. The UI was poor and the whole application was slow in general. Glad to see they’re still pushing the project forward though, every competition is healthy.

Classifying Minds 4 years ago

Lately I arrived to the hypothesis that our minds are nothing else than an illusion. Of course, a very useful one.

Why? Because I can draw an analogy to a video game character with some shocking sucess.

DISCLAIMER: I just like to overthink this for fun, I am no scientist and I am not affirming facts, just throwing some idea around at the end of my workday. :)

If you play games, think on a first-person shooter (FPS). When you embody a character on those games, it has a certain "amount of life" that can be drained or filled. If you take too much damage you die.

In case another character is shooting at me, most modern games will give you several hints that you should pay attention to take action and save yourself: the character's vision can start to fade, the sounds starts getting muffled and you will get visual hints from where you might have been getting your shots from. If you hide yourself, after some time you will start to recover your "life bar". You normally get a positive visual hint that tells you that.

Same for NPCs: if you shoot at them, their "life bar" will decrease and, if the game as a good ~AI~, the NPC will try to save themselves: hide, flank you, whatever.

Now think about our human brain and how we learned in recent years how our dopamine neurotransmitter works: it is a neurotransmitter that modulates both our "pleasure" and "pain" sensations, among many other things. If we do things that are very bad for us, we feel "pain" and we learn we shouldn't do more of those. Opposite is also true: if we do things that are nice for us, it makes us learn to do more of that.

Why those negative or positive hints we see in our screens when playing such shooter games wouldn't be conceptually the same as what we experience as human beings? When I play such games I can see superb image quality and simulated human behavior, and all that is running in a hardware just in front of my eyes with some shiny RGBs.

Why the pain I feel "in reality" would be any different than the "pain" experienced by those virtual characters? Both have the purpose to push the organism, virtual or real, to perform certain actions.

Perhaps we will discover soon that our minds are nothing but a well-constructed illusion that is being created by our brains when we're awaken. Which is nothing short of just amazing, by the way.

I am sorry to hear that. You might find very useful this EP about meditation from Andrew Huberman: https://youtu.be/wTBSGgbIvsY

It’s the first time I saw someone differentiating different types of meditation and it seems to match your experience.

Basically, we can either exercise and build up our focus to our internal state and bodily sensations OR do the same but focusing externally.

The interesting thing is that some people are biased to one or another, and if you have issues like anxiety then you should probably practice meditation to strengthen your focus and attention less on your body and more externally.

Really recommend the whole EP, I think you’ll find particularly interesting given your story.

If you have a couple years worth of your monthly expenses in your savings then I wouldn’t be so worried about it. What you have done with that is to buy you time while you figure out the situation. This is enough for most problems you would face wrt employment.

What calms me down when I’m feeling anxious like you is to write down some plans with different scenarios: good, okay and bad.

Once I have a plan for the “bad” scenario I feel way more comfortable and can chill.

Not a technical trick but this helps immensely when designing an application: always start with good problem decomposition and draft the technical components and their interfaces derived directly from that.

What I realized over my career is that almost always the software architecture quality just follows how well the problem was decomposed initially. If that decomposing processing is done well, getting to good technical and visual interfaces for the application is a straightforward process.

Let me give a practical example of good decomposition and translation to technical interface.

Let's say you want to develop an application to manage a parking lot. Start by listing what happens in the parking lot, thinking in a story format (user stories are not a coincidence):

- A car enters, the machine generates a code and prints into a ticket, the driver picks the ticket up

- Then the driver searches a suitable spot and parks the car

- Afterwards, the driver inserts the ticket in a machine that reads the code, calculates the price and ask for payment

- The driver pays, the machine returns the ticket and the driver proceed to exit

- At the exit, the driver inserts the ticket on another machine which validates if it was paid before opening the boom pole

Now, let's draft the components and their interface for that. Tip: the best names are already contained on that story. We need to: 1. Generate ticket code 2. Calculate price for ticket 3. Request ticket payment 4. Validate ticket

We can easily translate those to something similar to this:

TicketManager.generateTicket() => ticketCode

TicketManager.calculateTicketPrice(ticketCode) => float

TicketManager.requestTicketPayment(ticketCode) => (integration with the machine)

TicketManager.validateTicket(ticketCode) => boolean

Here is a good start point, you can decide to put those methods and their implementation into specific components depending on how complex those are. Yes, everything is included in that `TicketManager` but this is already a nice draft which can be improved upon.

My point here is that it is that simple. I use this approach both for boring simple and extremely complex use cases and it works wonderfully to keep things simple and connected with the domain. Just use the language that describes what is wanted from the automation, and use that in the final implementation directly.

There are multiple edge cases and scenarios to deal with within a problem domain, but the skeleton of your program is there and unless the concept of the problem changes, those won't go away soon.

This might sound obvious and dumb for some people but I stopped counting how many meetings I participated where people spoke in natural language what the program must do and in the very next moment that is lost completely by someone trying to translate to code using other terms and structure.

Our language already gives us what we want: verbs and nouns describe actions, capabilities we want to automate with the help of a computer program. Those same verbs and nouns should become function names within the software.

It is that simple, people overcomplicate things too much.

P.S.: Can't say for sure if this works nicely for other types of domains (scientific, research), but I would assume that it does. We humans create concepts using our natural language all the time. Writing software that represents those concepts is what programming is all about.

Thanks for the time you dedicated to check it out and reply to me here, it really makes me happy.

The responsive version is buggy indeed, sorry for that. This will be my focus on the coming days and should be improved very soon. I was caught in a loop where

Thanks for the suggestions, already added them to the to-do list. If I may, a follow-up: what have you thought about the aesthetic chosen?

I explain: when I started my career, many years ago, I started as an UI designer. Although I eventually pursued the programming path, I always felt sad to have abandoned doing designs. This project also have this deeper meaning to me – I tried to improvise on its design and do something I just felt like doing.

I'm wondering if my intuitions are still there to make something minimally appealing. :)

Exactly! My doctor made an analogy of taking meds with wearing glasses for sight correction: you don’t need to use it at all times, but if you do want to see properly then you do need them.

Out of curiosity: may I ask which medication are you using?

Most days I’m taking Concerta 54mg topping up with the short release (Ritalin) as needed. I never needed to try Adderall or Vyvanse as that combo worked so nicely for me. Some days I want to have finer control and just use the short release.

I cried throughout my first weeks on meds. Finally understanding how calm most people experience their brains was life changing. :)

I was diagnosed with somewhat severe ADHD, hyperactive and attention subtype. I have few tips to share:

1. Find your medication. After I found mine with the correct dosage, my life improved ten fold. Our dopamine system is wired differently and medication is the basis of treatment to cope with it.

2. Externalize everything: thoughts, events, planning, even your life’s values if you feel like it. Write it all down and build the discipline to keep those updated. Use todo-lists for everything. The poor executive functions we experience can be compensated by externalizing everything, so always organize your thoughts in a notepad. I use NotePlan mac/iOS app and highly recommend to check it out.

3. A lesser commonly known part of being ADHD is that it can also cause emotional unbalance. We can get overwhelmed, overexcited and overanxious easily. Keep awareness of your emotions. Again, write them down.

4. SLOW DOWN. Especially if you are also hyperactive. Try to think and react more slowly to the world around you. Give time for things to sink in your head before taking action.

5. Last but not least: be kind to yourself. You can’t always do everything perfectly. Mistakes are going to happen and that’s normal for everyone. Focus on improving yourself a little everyday and enjoy the present.

If you haven’t seen this video yet, it explains better and in much more detail: https://youtu.be/sPFmKu2S5XY

With all due respect fellow HN reader, I never said his idea was great or revolutionary.

When I posted my comment, most comments I read then haven't tried to discuss any specific points nor his ideas, and my comment was for those. Most were discrediting the guy just based on his personality.

No matter how big this man's ego are, and I also think it is, he has proven himself a creator so far and to be passionate on those topics. For me, that's enough to not dismiss him as crazy or charlatan, especially so early.

My main point here is not aimed to defend or "fluff" Wolfram – I don't care about him personally. It is only about how our society does not have a healthy culture on receiving new ideas.

Let him and his team pursue his research – if this turns up to be something remarkable, time will show us – and humanity will benefit from it.

I posted "Law of Jante" as I see this happening over and over again. Different contexts, same "boohoo, this person think they're better than us".

Complicated is not a virtue. That is not correct.

Complicated just means a complex 'something'. If the complexity of 'something' is accidental or not, that is another topic and is not even subject to moral judgment IMO.

Now, to develop complex software in a complex domain over several years, this is something hard and only someone sane can do that. So I'm just optimistic and open to see what his team will output from all this.

Have a great weekend!

I think Law of Jante summarizes the 'zeitgeist' of HN comments towards this man: https://en.wikipedia.org/wiki/Law_of_Jante

The goal should be always to understand and discuss ideas, despite egos. As hard that can be practically, anything else is unproductive and not worth persuing.

His thoughts and theories are something to not ignore, but to follow with the same skepticism as any revolutionary claim should be. That should be irrespective of the author.

But we need to give value to new ideas and have a small dose of optimism, that way we can be open to true innovation and paradigm shifts.

But there is nothing bad that Wolfram's mind is powerful. I doubt anyone here would dare to try to create something as complicated as it's Wolfram service.