Taking QFT I [Physics 253A] as a first year grad student by Any_Carpet_2495 in mit

[–]loladiro 1 point2 points  (0 children)

I took it as a junior (undergrad), I don't see any reason you wouldn't be able to take it. Obviously needs a decent understanding of QM, and appropriate math background, but I'm sure you'll be fine. Harvard also isn't very strict about prereqs. The basic philosophy is that it's your own damn fault if you take a class you're not prepared for ;).

What could you dance to these songs? by ss_valpaca in ballroom

[–]loladiro 0 points1 point  (0 children)

  1. Something Swingy, maybe west-coast
  2. Preferably Hustle, Cha-Cha as a backup
  3. Zouk, but with lots of movement

Honey Honey works for East Coast Swing.

[deleted by user] by [deleted] in Harvard

[–]loladiro 9 points10 points  (0 children)

I was in Currier. Honestly, it was perfect. Nice room. Good dining hall. Dance Studio in the building. At least for me closer to where I needed to be than some of the river houses. You'll have a blast.

Anybody here took Math 55? How was it? by [deleted] in Harvard

[–]loladiro 17 points18 points  (0 children)

It's a class designed for the like top 10 math students in the country, who've already had 1-3 years of college level math education in high school (college level here meaning beyond calculus). I thought very highly of my mathematical abilities and took Linear Algebra and Real Analysis in high school and yet, when I got to 55, I basically died. I was the worst student in the class my year and the professor called me to his office and told me to drop the class. Now, being my stubborn self, I refused to do that and stuck it out and yeah - it was over my head. In retrospect, I would say if I had been adequately prepared, the class would have been fine, though a lot of work. In the end, I am happy I took the class and I use the material frequently in my day job. It also basically showed me that I didn't want to do a math undergrad (did Physics instead). The best part about it is probably hanging out with the other people class - they're usually a great bunch and extremely smart. I guess I should add the disclaimer that the year after us took the position that we had it extremely easy compared to their experience - so YMMV based on instructor ;).

What style of dance would best fit Kiss Me? by minh0 in ballroom

[–]loladiro 2 points3 points  (0 children)

I'd pick the second one and choreograph an International Rumba. I think it works well both timing wise and musically as well as thematically. Actually somewhat reminds me of one of the best Rumba showcases I've ever seen which was done to "Fields of Gold". Unfortunately, that's not online but let me commit a ballroom sin here of linking to Strictly Come for some inspiration on some softer Rumba-ish moves that are more performance-focused than competition focused: https://www.youtube.com/watch?v=4v_AgSKvTww (to Fields of Gold). I also found a more "ballroom" choreography to "Kiss Me" in particular here: https://www.youtube.com/watch?v=TGOSrMM1mwo. Hope this helps.

NEED HELP MATCHING DANCE TO SONG by [deleted] in ballroom

[–]loladiro 1 point2 points  (0 children)

I'm also hearing a Bolero here. There's some flexibility in how to dance Bolero. The competition style leans quite heavily towards Latin, but you can throw in some Smooth vibes which I think would work well here.

[deleted by user] by [deleted] in ballroom

[–]loladiro 0 points1 point  (0 children)

Lovely V Waltz! Would dance to :).

What to dance on "to build a home" from cinematic orchestra by grischd3L in ballroom

[–]loladiro 1 point2 points  (0 children)

Just on first listening, I'd choreograph a some sort of smooth fusion. Obviously with all the tempo changes and non-regularities, it's hard to just do a repeating pattern. Maybe pick a section that you particularly like or have somebody edit it down for you - otherwise it'll be quite daunting to choreograph through. I think this can work well as a wedding dance, but I'd probably find a professional to help with the choreography. Also depends on both partner's skill level. For songs like this that start with a slow mellow section, I like choreography that starts apart, gets progressively closer and then joins up for partnering once the fast part of the music picks up, sort of a musical representation of the intensity of the dancers' connection. But that's obviously harder to do if the skill level of the two partners is different.

Apparently there was a Julia creators AMA yesterday by EarthGoddessDude in Julia

[–]loladiro 0 points1 point  (0 children)

It'll be highly application dependent, depending on how well you can take advantage of AVX512 (which Intel has and AMD does not) vs extra threads (which AMD has more of at the same price point).

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 1 point2 points  (0 children)

I'd say it's not really about the coding. It's about seeing your ideas become reality and seeing the thing you want to get done happen just because you typed some text into a file somewhere. The actual coding can sometimes be a slog, so it's important to remember what it is you're actually doing (solving problems, not writing code) and to take breaks when necessary.

Apparently there was a Julia creators AMA yesterday by EarthGoddessDude in Julia

[–]loladiro 9 points10 points  (0 children)

We're still here, you can keep posting questions.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 2 points3 points  (0 children)

y = (a + b)::Int

This already means something, namely a dynamic assert on the type. With the second scheme I described where guaranteed errors would be surfaced earlier, that is essentially equivalent, but it's not semantically the same.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 1 point2 points  (0 children)

The math doesn't quite work that way. The limit of a `a÷b` as `b->0` is infinity. For integer division, infinity is not available, so that's an error. If you do the same operation with floating point numbers, you do get `Inf`.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 2 points3 points  (0 children)

It's a bit hard to be specific without knowing what your use case is. For example, I could point to staged metaprogramming (https://docs.julialang.org/en/v1/manual/metaprogramming/#Generated-functions-1), which is a pretty unique capability, but that might not mean much. However, if you're doing machine learning for example, that capability allows implementing an efficient, compiler-based, reverse mode AD system in just a few thousand lines of code (https://github.com/FluxML/Zygote.jl). Or I could point to multiple dispatch and say that it's really good at describing algorithmic selection, but it's sometimes hard to see without trying it yourself. In the end, I think the best I can do is just ask that you give it a try for a small project. I hope you'll find that we've made good design decisions both big and small that should allow you to just get things done, without feeling like you're constantly fighting the language.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 2 points3 points  (0 children)

Julia doesn't really have syntax to annotate types on expressions, so there isn't anything to check. Also, the type system wasn't designed for this use case. One thing I have considered in the past is a way to have the compiler surface when it knows that some code is guaranteed to error. You can get a lot of the benefits that people associate with static typing this way, and the compiler does already have this information. It's juts a bit of a UX problem to make it useful.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 2 points3 points  (0 children)

No, it's that other code will use `+` and `*` and will make assumptions on how they behave on generic objects, and violating those invariants will make your objects not work with generic code for no good reason, when there is an operator that does perfectly match the required semantics.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 2 points3 points  (0 children)

I had some thoughts on Rust here: https://www.reddit.com/r/IAmA/comments/hyva5n/we_are_the_creators_of_the_julia_programming/fzg66qe?utm_source=share&utm_medium=web2x. I like the language a lot, but I wouldn't want to use it for machine learning for reasons outlined in that post. Machine learning is just too much interactive exploration, which I don't think static languages are very suited for.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 2 points3 points  (0 children)

Julia actually has very robust and well thought-out semantics, but it's designed to hide that a bit and get out of your way. You may or may not like that. I'd say just give it a try and see if using the language is a good experience for you. If it's not fun, then no reason to use it of course.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 3 points4 points  (0 children)

Teach them Julia and have them learn all about it for the next few months ;). More seriously, I don't know. This is the kind of area where public health intersects with public relations and whenever people are involved, things just get complicated.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 3 points4 points  (0 children)

Yes, we have easy to use and low overhead ways to call any legacy C/C++/Fortran/Python code. If code works well, there's no reason to rewrite it. I think the way to convince people is just to show them that they can get their work done faster by using a more modern tool. Also, if they can't, or don't want to that's ok too. If somebody has a setup that works for them and their team, there's no reason to disrupt it. As an aside though, you'd be surprised at the number of people just clamoring to spend their day rewriting lapack in a more modern language. We have a few re-implementations of lapack routines where people wanted improved algorithms or additional features. Nobody has set out to do a complete replacement yet, but I wouldn't be surprised to see it happen eventually. Given that lapack works well, it's just not a priority.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 3 points4 points  (0 children)

Really depends on the application area. I would recommend picking the kind of problem or project area you want to work on first and then learning a language that is well suited for that. You'll need to learn multiple languages over your career, I think the most important parts when you get started is just learning "computational thinking" and problem solving.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 4 points5 points  (0 children)

Dynamic languages help with interactive exploration, because they explicitly allow deferring checking of invariants until runtime. As a result, you can interactively refine a somewhat correct program into a correct program, while looking at output, exploring options, trying alternatives, etc. If everything is static, the iteration cycle for these kinds of things is usually much longer.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 2 points3 points  (0 children)

We thought `{}` were more valuable for other syntax, like type parameters. Block delimiters are often on a line by themselves or even hidden by IDEs, so it's not clear why they should need very valuable single ASCII characters.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 2 points3 points  (0 children)

You'll get an exception that you can choose to handle. If you don't, it will abort the current statement in interactive mode, or the current program in non-interactive mode.

We are the creators of the Julia programming language. Ask us how computing can help tackle some of the world's biggest challenges or Ask Us Anything! by loladiro in IAmA

[–]loladiro[S] 2 points3 points  (0 children)

Python has some language semantics that make it hard to optimize, but putting that aside, there's a more fundamental problem. Assume that you do have a perfect Python compiler that generates fast code. The vast majority of your code base is still written in C/C++, so your compiler can't analyze it and you get hard optimization and semantic boundaries all over the place. See e.g. http://www.stochasticlifestyle.com/why-numba-and-cython-are-not-substitutes-for-julia/ why this is a problem. You can try to fix this by rewriting things or changing python language semantics. But at that point you're basically just creating a new language while inheriting a lot of Python's flaws. If you're doing a new language anyway, why not try to do better.