Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "theta"
-
I could bitch about XSLT again, as that was certainly painful, but that’s less about learning a skill and more about understanding someone else’s mental diarrhea, so let me pick something else.
My most painful learning experience was probably pointers, but not pointers in the usual sense of `char *ptr` in C and how they’re totally confusing at first. I mean, it was that too, but in addition it was how I had absolutely none of the background needed to understand them, not having any learning material (nor guidance), nor even a typical compiler to tell me what i was doing wrong — and on top of all of that, only being able to run code on a device that would crash/halt/freak out whenever i made a mistake. It was an absolute nightmare.
Here’s the story:
Someone gave me the game RACE for my TI-83 calculator, but it turned out to be an unlocked version, which means I could edit it and see the code. I discovered this later on by accident while trying to play it during class, and when I looked at it, all I saw was incomprehensible garbage. I closed it, and the game no longer worked. Looking back I must have changed something, but then I thought it was just magic. It took me a long time to get curious enough to look at it again.
But in the meantime, I ended up played with these “programs” a little, and made some really simple ones, and later some somewhat complex ones. So the next time I opened RACE again I kind of understood what it was doing.
Moving on, I spent a year learning TI-Basic, and eventually reached the limit of what it could do. Along the way, I learned that all of the really amazing games/utilities that were incredibly fast, had greyscale graphics, lowercase text, no runtime indicator, etc. were written in “Assembly,” so naturally I wanted to use that, too.
I had no idea what it was, but it was the obvious next step for me, so I started teaching myself. It was z80 Assembly, and there was practically no documents, resources, nothing helpful online.
I found the specs, and a few terrible docs and other sources, but with only one year of programming experience, I didn’t really understand what they were telling me. This was before stackoverflow, etc., too, so what little help I found was mostly from forum posts, IRC (mostly got ignored or made fun of), and reading other people’s source when I could find it. And usually that was less than clear.
And here’s where we dive into the specifics. Starting with so little experience, and in TI-Basic of all things, meant I had zero understanding of pointers, memory and addresses, the stack, heap, data structures, interrupts, clocks, etc. I had mastered everything TI-Basic offered, which astoundingly included arrays and matrices (six of each), but it hid everything else except basic logic and flow control. (No, there weren’t even functions; it has labels and goto.) It has 27 numeric variables (A-Z and theta, can store either float or complex numbers), 8 Lists (numeric arrays), 6 matricies (2d numeric arrays), 10 strings, and a few other things like “equations” and literal bitmap pictures.
Soo… I went from knowing only that to learning pointers. And pointer math. And data structures. And pointers to pointers, and the stack, and function calls, and all that goodness. And remember, I was learning and writing all of this in plain Assembly, in notepad (or on paper at school), not in C or C++ with a teacher, a textbook, SO, and an intelligent compiler with its incredibly helpful type checking and warnings. Just raw trial and error. I learned what I could from whatever cryptic sources I could find (and understand) online, and applied it.
But actually using what I learned? If a pointer was wrong, it resulted in unexpected behavior, memory corruption, freezes, etc. I didn’t have a debugger, an emulator, etc. I had notepad, the barebones compiler, and my calculator.
Also, iterating meant changing my code, recompiling, factory resetting my calculator (removing the battery for 30+ sec) because bugs usually froze it or corrupted something, then transferring the new program over, and finally running it. It was soo slowwwww. But I made steady progress.
Painful learning experience? Check.
Pointer hell? Absolutely.4 -
!rant
Who here is into VR?
Just picked up a Google Daydream View and a Ricoh Theta V and they're so good.3 -
As of this week, recruiters have been calling the company office number that I work for.
The first time this happened was Monday and of course, I answered my office phone after it was redirected from the support team. It was a man with an English accent offering me a job in Luxembourg. I politely said no thanks as I had no intention of uprooting. Plus, I was sure that he had no idea of my technical skills. The nerve of these insects.
Today, it happened again. The phone rang. It was my colleague. He said, "there is a guy looking for you. He sounds English". Alarm bells went off straight away. I replied, "He is a recruiter, I don't know anyone with an English accent. Ask him what he wants.".
He claimed to be from a company I previously worked for and had been requested to contact me, but would not say from which company that was. Sneaky bastard!
My colleague said the number came from a company called Theta Partners in Great Britain.
I think I need to prepare a good response to the recruiter, if it happens again. Any suggestions?1 -
If anyone has a moment.
curious if i'm fucking something up.
model:
self.linear_relu_stack = nn.Sequential(
nn.Linear(11, 13),
nn.ReLU(),
# nn.Linear(20, 20),
# nn.ReLU(),
nn.Linear(13,13),
nn.ReLU(),
nn.Linear(13,8),
nn.Sigmoid()
)
Inputs:
def __init__(self, targetx, targety, velocityx, velocityy, reloadtime, theta, phi, exitvelocity, maxtrackx, maxtracky,splashradius) -> None:
# map to 1 and 2
self.Target: XY = XY(targetx, targety)
# map to 3 and 4
self.TargetVel: XY = XY(velocityx, velocityy)
# TODO: this may never be necessary as targeting and firing is the primary objective
# map to 5, probably not yet needed may never be.
self.ReloadTime:float = reloadtime
# map to 6 and 7
self.TurretOrientation: Orientation = Orientation(theta, phi)
# map tp 8
self.MuzzleVelocity:float = exitvelocity
# map to 9 and 10, see i don't remember the outcome of this
# but i feel it should work. after countless bits of training data added.
# i can see how this would fuck up if exact values were off or there was a precision error
# maybe firing should be controlled by something else ?
self.MaxTrackSpeed: Orientation = Orientation(maxtrackx, maxtracky)
# these are for sigmoid output, any positive value of x will produce between 0.5 and 1.0 as return value
# from the sigmoid function.
self.OutMin = 0.5
self.OutMax = 1.0
# this is the number of meters radius that damage still occurs when a projectile lands.
# to be used for calculating where a hit will occur.
self.SplashRadius:float = splashradius
Outputs:
def __init__(self, firenow, clockwise,cclockwise,up,down,oor, hspeed, vspeed) -> None:
self.FireNow = float(firenow)
self.RotateClockWise = float(clockwise)
self.RotateCClockWise = float(cclockwise)
self.MoveUp = float(up)
self.Down = float(down)
self.OutOfRange = float(oor)
self.vspeed = float(vspeed)
self.hspeed = float(hspeed)9 -
Can anyone recommend resources on learning/revising big O and big Theta notation?
It’s the one thing that never seems to stick in my head, and the course material provided by university isn’t particularly useful.7 -
Harness the Power of Healing Frequencies with Roxanne Hotchkiss, Healer & Intuitive Coach
At Roxanne Hotchkiss Healer - Intuitive Coach, we understand the profound impact that energy has on our physical, emotional, and spiritual well-being. One powerful tool that can help facilitate healing is healing frequencies—vibrational energy that resonates at specific rates to restore balance, promote wellness, and activate the body's natural healing processes.
Located at Ebury Street, London SW1W, Roxanne uses the transformative power of healing frequencies to help you restore harmony within your mind, body, and spirit. Whether you are looking to heal from trauma, release emotional blockages, or elevate your overall well-being, healing frequencies can offer a profound and effective solution.
What Are Healing Frequencies?
Healing frequencies refer to specific vibrations or sound frequencies that are known to have a positive effect on the body, mind, and spirit. These frequencies work by resonating with your own energy fields, helping to restore balance, clear blockages, and promote healing on a cellular level.
Every living being is made up of energy, and each part of the body vibrates at its own unique frequency. When we are in balance, our energy vibrates harmoniously, but when there are blockages or imbalances, our frequencies can become distorted, leading to physical or emotional dis-ease. Healing frequencies help to realign the energy field, clear blockages, and restore harmony to the body and mind.
Some of the most common types of healing frequencies include:
Solfeggio Frequencies: These ancient frequencies are believed to have healing properties that resonate with the body’s natural vibrations. They include specific tones like 396 Hz (Liberation from Fear), 417 Hz (Undoing the Negative), and 528 Hz (Transformation and Miracles).
Binaural Beats: This technique involves playing two slightly different frequencies in each ear, creating a perceived third frequency that can help with relaxation, focus, or deep meditation.
528 Hz (Love Frequency): This frequency is known as the “miracle” tone and is associated with DNA repair, healing, and emotional balance.
Theta Waves (4-8 Hz): These frequencies are associated with deep meditation, relaxation, and the subconscious mind, often used for deep healing and spiritual growth.
The Science Behind Healing Frequencies
The idea behind healing frequencies is rooted in the concept that everything in the universe, including our bodies, is made up of energy that vibrates at specific frequencies. When our vibrations are in harmony, we experience well-being and vitality, but when our energy becomes stagnant or misaligned, we may experience physical pain, emotional distress, or spiritual disconnection.
Studies have shown that sound waves, particularly those at specific frequencies, can have a profound impact on the human body. For example, research suggests that exposure to healing frequencies can promote relaxation, reduce stress, improve sleep quality, and even stimulate healing at the cellular level.
Healing frequencies also activate the body's natural healing response, supporting the release of trapped emotions, trauma, and stress. As a result, they can promote deep emotional healing, spiritual growth, and physical well-being.
How Roxanne Hotchkiss Uses Healing Frequencies in Her Practice
At Roxanne Hotchkiss Healer - Intuitive Coach, Roxanne integrates healing frequencies into her healing sessions to support clients in their personal transformation. Through the use of sound therapy, guided meditation, and energy healing, Roxanne helps clients experience the power of healing frequencies to release blockages, activate their body’s healing potential, and restore balance to their lives.
Here’s how Roxanne uses healing frequencies to support your journey:
1. Sound Healing Sessions
Roxanne uses sound therapy in her practice, incorporating instruments like tuning forks, singing bowls, and chimes that resonate at specific healing frequencies. These sound vibrations are carefully selected to align with the chakras, clear blockages, and promote a deep sense of relaxation and healing.
During sound healing sessions, you will:
Experience the soothing vibrations of sound waves that penetrate deep into your energy field.
Clear emotional and physical blockages that may be preventing you from achieving balance and wellness.
Enter a deeply relaxed state, which allows for deeper healing and self-awareness.
1
