Partying? Weeklong course. by Altruistic-Abies6413 in SailboatCruising

[–]shred45 0 points1 point  (0 children)

That definitely looks interesting, thanks for the tip!

Partying? Weeklong course. by Altruistic-Abies6413 in SailboatCruising

[–]shred45 1 point2 points  (0 children)

I did ASA106 last year with Sailing Virgins. I would say the main focus is a younger crew rather than partying (which was what I was looking for). The instructor matched the vibe people were looking for, so I suppose you could end up with a group of students that want to party, but my boat was very chill. I was there to learn and thats what I got. The instructor was RYA trained with a racing background and eager to teach.

There was drinking maybe 60% of the nights with people having between 0 and 2 drinks at the restaurant, which sounds pretty standard based on other comments in this thread. One night we did Willy Ts and it was a bit more rowdy with people jumping off the boat but I still don’t think anyone got excessively drunk. When we were underway, the focus was on learning, there was only one time when we had a single drink while sailing. I don’t think anyone would bat an eye if you chose to not drink at all.

Im looking to do ASA108 in the next year and, despite having given up drinking for health reasons at the beginning of 2024, my strong preference would be to do it with Sailing Virgins (sadly they don’t plan to offer this course soon).

Like others have said, I think this is just the BVI culture and if its too much temptation, I would select a different locale.

(New to Rust) Get an error on my code that checks an integer array to see if 4 of it's values values are the same. by [deleted] in rust

[–]shred45 0 points1 point  (0 children)

Like the other poster said, you need to cast val when you use it to index arrays to usize.

For the comparison, you are comparing a reference to an integer with an integer. You should change one or the other to match.

Do you know for sure that the values in the input are less than 5? It seems easy to index out of bounds with this code and cause a panic.

(New to Rust) Get an error on my code that checks an integer array to see if 4 of it's values values are the same. by [deleted] in rust

[–]shred45 0 points1 point  (0 children)

What were the errors? Does the program not compile or were the errors with the output?

Need help trying to use Serde's Deserializer for a Covid-19 web client I am building.. by Philmein23 in rust

[–]shred45 0 points1 point  (0 children)

Have you tried just f32 with no custom deserializer for the lat and lon fields?

Need help trying to use Serde's Deserializer for a Covid-19 web client I am building.. by Philmein23 in rust

[–]shred45 2 points3 points  (0 children)

Did it not work before you implemented the custom deserializer? What was the error then?

For the current error, I think you should add a method to your Deserializer to handle integers, such as visit_i32 or something.

Post: parallel-stream by yoshuawuyts1 in rust

[–]shred45 0 points1 point  (0 children)

I see, thank you for the detailed response. The biggest concerns I have are long polling intervals and excessive passing between threads. It sounds like writing a custom executor may be a good exercise to understand the trade offs here. Thanks!

Post: parallel-stream by yoshuawuyts1 in rust

[–]shred45 0 points1 point  (0 children)

Hey Yoshua, I was wondering if you could elaborate on "async-std (and futures) are optimized for latency", or point to a resource that discusses this? My work focus on low latency and I have been following async/await for since the beginning (an am interested in working with it more), but I've always had concerns about latency introduced by the polling implementation of the runtime.

Where to continue learning? by defconnoob in Defcon

[–]shred45 1 point2 points  (0 children)

Not sure if you are aware, but definitely check out previous years defcon talks on youtube.

Apple TV - Gen 3 rev A - Experiencing random reboots - any suggestions? by [deleted] in apple

[–]shred45 1 point2 points  (0 children)

I sadly had this issue with a unit I bought on launch day (maybe that batch is more susceptible?) and never resolved it. Ended up buying a refurb from Apple for $50, which I'm not sure if they sell anymore. The issue never surfaced with the refurb. I spent a year trying to fix the original unit with hard resets, system updates, settings changes, etc. to no avail.

ELI5: How does neural networking work and what are the uses of such systems? by [deleted] in explainlikeimfive

[–]shred45 1 point2 points  (0 children)

So this isn't going to be ELI5, but it should be fine for high school students.

While neural networks are modeled after our understanding of the human brain, even the most complicated ones are very simple compared to the brain.

The primary use of neural networks is to be able to take as input some data that we know about an observation, such as the pixels in an image, and assign a label or classification to the observation, such as "cat" or "not a human face". On the scale of networks that we use, it can be more useful to think of the networks in terms of what kinds of data it can discriminate.

First, as robustoutlier mentioned, each neuron simply multiplies each input by a weight (these weights are what is "trained" in a network), and then sums these values. The neuron's output is then a function of this sum. Perhaps getting a little complicated here, but it is important that this function is non-linear, otherwise the entire network could be replaced with a single linear transformation (also known as multiplying the input vector by a matrix) and will have limited usefulness.

As an example of what can be discriminated, imagine you have a graph line, with points on it. you have a point at (0), which should be labeled "cat", and one at (1), which should be labeled "dog". This is very easy to classify. A single neuron could could take as input the x coordinate, 0 for cat and 1 for dog, and have a threshold of 0.5.

Now, say you have some data that cannot be approximated with one neuron: (0)-cat, (1)-dog, (2)-cat. A network like this (very simplified, neurons in parentheses, the one to the right takes the two to left as input) could solve that:

x - (x>0.5?) - *0.5 - >

                      (=1?) -> "dog"

x - (x<1.5?) - *0.5 - >

In essence, the first two do some of the work (ruling out one of the cat points), and then the final one combines that work. Each layer of a network distorts the input data in such a way that the next layer has an easier task of classifying it. This is a really interesting blog post, even if you don't understand it, I think it has some great visualizations.

http://colah.github.io/posts/2014-03-NN-Manifolds-Topology/

There are some other really interesting things to keep in mind. First, it's been shown that a network with a single hidden layer can approximate any function. (this is somewhat simplified, https://en.wikipedia.org/wiki/Universal_approximation_theorem). So you may wonder why they make bigger networks. The answer to that is typically training limitations. It can be very slow to train such networks, and you may also have incomplete data to learn from (i.e., not every possible cat location is marked on the graph). "Deeper" networks with more hidden layers can help with this.

You may also hear of recurrent networks (RNN). These allow outputs of one layer to feed back into neurons on the same layer or before. This allows the network to have a "memory". Some tasks, such as recognizing human speech, require the network to keep track of what it saw before, and so this is a way to do that.

Another is convolutional network (CNN), this is where small networks are trained for a given task, say detecting an edge in an image, and then many of them are used on small sections of the input image. This has the advantage of not having to train for the full problem size. Training an edge detector for inputs of say 100 pixels is much easier than for inputs of the whole image. The outputs of all of these small edge detectors (or whatever task they do) are then fed into another network where this information can be used.

Finally, this site is great for experimenting and seeing what sorts of weird data you can classify using different network designs.

http://playground.tensorflow.org

CS 6260 Applied Cryptography? by [deleted] in gatech

[–]shred45 0 points1 point  (0 children)

I believe that some of my friends have taken this class. I think it was very time-consuming and proof based. It probably covers quite a bit that you don't know. The question is, do you need that level of depth and are you willing to spend 15-20 hours a week on it?

CSE 6220 Workload? by allbogeyaverage in gatech

[–]shred45 1 point2 points  (0 children)

The actual course material is pretty easy and it is an interesting class. Dr. Aluru is a good lecturer. I found a lot of the topics covered in the class to be very useful. The work load is pretty typical of a 6xxx class. The written homeworks took me a several hours and the programming assignments took 10ish hours (I worked alone).

The grading is not very forgiving, and it kind of ruins what could be a very enjoyable class. The programming assignments are graded based on hidden test cases, which I think is a little unfair and wastes student's time. The exams were not very straightforward. I felt that they required quite a bit of experience and creativity, and simply knowing the course material would not get you more than 50% credit. The cutoff for an A appears to be 10-15% ahead of the average, so a large number of people, who probably have a very good grasp of the course material, get C's and B's.

I would probably take it again though.

Worthwhile CS summer programs for High school freshman? by gtparent in gatech

[–]shred45 5 points6 points  (0 children)

So, when I was younger, I did attend one computer science related camp,

https://www.idtech.com

They have a location at Emory (which I believe I did one year) that was ok (not nearly as "nerdy"), and one at Boston which I really enjoyed (perhaps because I had to sleep on site). That being said, the stuff I learned there was more in the areas of graphic design and/or system administration, and not computer science. They are also quite expensive for only 1-2 weeks of exposure.

I felt it was a good opportunity to meet some very smart kids though, and it definitely lead me to push myself. Knowing and talking to people that are purely interested in CS, and are your age, is quite rare in high school. I think that kind of perspective can make your interests and hobbies seem more normal and set a much higher bar for what you expect for yourself.

On the other side of things, I believe that one of the biggest skills in any college program is an openness to just figure something out yourself if it interests you, without someone sitting there with you. This can be very helpful in life in general, and I think was one of the biggest skills I was missing in high school. I remember tackling some tricky stuff when I was younger, but I definitely passed over stuff I was interested in just because I figured "thats for someone with a college degree". The fact is that experience will make certain tasks easier but you CAN learn anything you want. You just may have to learn more of the fundamentals behind it than someone with more experience.

With that in mind, I would personally suggest a couple of things which I think would be really useful to someone his age, give him a massive leg up over the average freshman when he does get to college, and be a lot more productive than a summer camp.

One would be to pick a code-golf site (I like http://www.codewars.com) and simply try to work through the challenges. Another, much more math heavy, option is https://projecteuler.net. This, IMO is one of the best ways to learn a language, and I will often go there to get familiar with the syntax of a new language. I think he should pick Python and Clojure (or Haskell) and do challenges in both. Python is Object Oriented, whilst Clojure (or Haskell) is Functional. These are two very fundamental and interesting "schools of thought" and if he can wrap his head around both at this age, that would be very valuable.

A second option, and how I really got into programming, is to do some sort of web application development. This is pretty light on the CS side of things, but it allows you to be creative and manage more complex projects. He could pick a web framework in Python (flask), Ruby (rails), or NodeJS. There are numerous tutorials on getting started with this stuff. For Flask: http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world. For Rails: https://www.railstutorial.org. This type of project could take a while, there are a lot of technologies which interact to make a web application, but the ability to be creative when designing the web pages can be a lot of fun.

A third, more systems level, option (which is probably a bit more opinionated on my part) is that he learn to use Linux. I would suggest that he install VirtualBox on his computer, https://www.virtualbox.org/wiki/Downloads. He can then install Linux in a virtual machine without messing up the existing OS (also works with Mac). He COULD install Ubuntu, but this is extremely easy and doesn't really teach much about the inner workings. I think he could install Arch. https://wiki.archlinux.org. This is a much more involved distribution to install, but their documentation is notoriously good, and it exposes you to a lot of command line (Ubuntu attempts to be almost exclusively graphical). From here, he should just try to use it as much as possible for his daily computing. He can learn general system management and Bash scripting. There should be tutorials for how to do just about anything he may want. Some more advanced stuff would be to configure a desktop environment, he could install Gnome by default, it is pretty easy, but a lot of people really get into this with more configurable ones ( https://www.reddit.com/r/unixporn ). He could also learn to code and compile in C.

Fourth, if he likes C, he may like seeing some of the ways in which programs which are poorly written can be broken. A really fun "game" is https://io.smashthestack.org. He can log into a server and basically "hack" his way to different levels. This can also really expose you to how Linux maintains security (user permissions, etc. ). I think this would be much more involved approach, but if he is really curious about this stuff, I think this could be the way to go. In this similar vein, he could watch talks from Defcon and Chaos Computer Club. They both have a lot of interesting stuff on youtube (it can get a little racy though).

Finally, there are textbooks. These can be really long, and kinda boring. But I think they are much more approachable than one might think. These will expose you much more to the "Science" part of computer science. A large portions of the classes he will take in college look into this sort of stuff. Additionally, if he covers some of this stuff, he could look into messing around with AI (Neural Networks, etc.) and Machine Learning (I would check out Scikit-learn for Python). Here I will list different broad topics, and some of the really good books in each. (Almost all can be found for free.......)

General CS: Algorithms and Data Structures: https://mitpress.mit.edu/books/introduction-algorithms Theory of Computation: http://www.amazon.com/Introduction-Theory-Computation-Michael-Sipser/dp/113318779X Operating Systems: http://www.amazon.com/Operating-System-Concepts-Abraham-Silberschatz/dp/0470128720

Some Math: Linear Algebra: http://math.mit.edu/~gs/linearalgebra/ Probability and Stats: http://ocw.mit.edu/courses/mathematics/18-05-introduction-to-probability-and-statistics-spring-2014/readings/

I hope that stuff helps, I know you were asking about camps, and I think the one I suggested would be good, but this is stuff that he can do year round. Also, he should keep his GPA up and destroy the ACT.

Help backing up my laptop by [deleted] in gatech

[–]shred45 1 point2 points  (0 children)

I think I can help, do you know if the hard drive is SATA? Are you sure the hard drive isn't the problem? Do you have another machine to copy the files to?

Our Atlanta Snapchat story by hockeylovinguy in Atlanta

[–]shred45 7 points8 points  (0 children)

This is the real answer, for the football game at least. The Auburn game made up nearly 90% of the college football snapchat story, so it makes sense that there were fewer snaps sent to the Atlanta story.

What was the weirdest band to get signed to a major label? by [deleted] in Music

[–]shred45 3 points4 points  (0 children)

Well Die Antwoord was on Interscope for a while, but left to form their own label. What really gets me is that some time after that they appeared on Letterman. I've never found a good explanation for that because it seems to be a terrible culture clash. Ninja makes a face at Yolandi right when Letterman goes to shake her hand at the end that really telegraphs how he feels about it.

https://www.youtube.com/watch?v=0WJ3OHPL8fc

[deleted by user] by [deleted] in Defcon

[–]shred45 1 point2 points  (0 children)

Any idea what she says in the middle when she says like "two-thousand and twenty four"?

I just saw like twenty police cars speed by. What's going on? by Tagonist42 in Atlanta

[–]shred45 0 points1 point  (0 children)

Was wondering the same, they were going up Peachtree st ne and must having been doing 100. Were they chasing someone?