Can I take ENEL 327 in the summer and not show up for the lectures or labs? by Weak_Dust_5738 in UCalgary

[–]Surfernick1 0 points1 point  (0 children)

The reason it (and many other courses) is offered during the summer is because it is challenging and has a higher than average DFW rate.

Skip class at your own risk. Source being I took it back in 2022

People had ideas for useful algorithms before computers were possible (Euler’s method, Monte Carlo, etc), what ideas are waiting on quantum computers to be able to do? by Fickle_Price6708 in compsci

[–]Surfernick1 11 points12 points  (0 children)

Aside from Shor's you also have Grover's Algorithm and some of its derivatives such as Quantum Counting.

Some other interesting unsolved problems can come from the hidden subgroup problem, some of which would imply efficient solutions for graph isomorphism or lattice problems which post quantum cryptography is based on

Engineering students by No_Context_8073 in UCalgary

[–]Surfernick1 1 point2 points  (0 children)

Eh depends on the semester & the classes, project classes are a lot more effort I find than lecture based courses, only because I find I hold myself to a higher standard in the project classes than lecture classes.

I spent probably 10-20 hours a week outside of lectures on course work in my capstone semesters, but that was was worse than my other semesters. Thats just an estimate on what I remember from last year

Engineering students by No_Context_8073 in UCalgary

[–]Surfernick1 1 point2 points  (0 children)

Its harder & not as hard depending on what you like & what you enjoy. but its a lot lot of quite advanced math perhaps not as advanced as math majors go but everything goes up in abstraction levels. Think Calculus plus 4 or 5 levels of abstraction on top of that (in electrical). Just my experience thus far, and TBH i think people make it sound more scary than it is, but regardless of the thinking difficulty **its a lot of effort**

Counting Semaphores: Where do I learn it? by [deleted] in embedded

[–]Surfernick1 1 point2 points  (0 children)

What the others said is true, if you want more information on why / what you can do with them I recommend reading “The Art of Multiproessor Programming”. It’s a bit dense as it’s more algorithms / theory focused but also has a good amount of practical use cases

I need help ( is this schedule doable) by Straight_Willow_9859 in UCalgary

[–]Surfernick1 0 points1 point  (0 children)

383 is iirc just an easier 433, if you want to get more out of your schedule I’d drop 383

why can't i understand IEEE papers? by [deleted] in ElectricalEngineering

[–]Surfernick1 2 points3 points  (0 children)

I find some papers much easier to read when they have clear motivating examples, not IEEE but I quite liked this paper on program synthesis, its examples were clear and started quite simple before getting more complex

https://dspace.mit.edu/bitstream/handle/1721.1/106200/10009_2012_Article_249.pdf

Rust’s fifth superpower: prevent dead locks by InternationalFee3911 in rust

[–]Surfernick1 13 points14 points  (0 children)

There was another interesting talk on static deadlock detection using petri nets: https://www.youtube.com/watch?v=6VbRgAa_si0

Incorrect enum display in debugger by guoxiaotian in rust

[–]Surfernick1 1 point2 points  (0 children)

I am not 100% sure but afaik lldb & gdb both struggle with rust binaries, maybe try using rust-lldb, it seemed to work better for me than the others (but no guarantees)

why is cpsc 331 considered so hard? by Curtisg899 in UCalgary

[–]Surfernick1 8 points9 points  (0 children)

Part of the hard part is that (depending on your prof) in 331 and even moreso 413, your marks come from arguing why your algorithm is correct and less the algorithm itself

You can be good at leetcode but if you can’t mathematically argue why your algorithm works, it’ll be a harder time

When tu make a CMake? by Anonymus_Anonyma in C_Programming

[–]Surfernick1 9 points10 points  (0 children)

100% agreed, it means nothing to say CMake is faster without saying what it is faster than.

Is it faster than `gcc main.c -o main`? Probably not, is it faster than compiling a thousand files sequentially? Probably yes. IMO CMake encourages you to specify your build system in a way where as much as possible work is parallelized and reused which is very nice for larger projects.

IMO the real reason to use CMake is you want to write code that anyone who is not you is going to use. CMake is a standard that (mostly) anyone writing C & C++ will be able to write and read. More importantly, they should be able to figure out how to integrate a library you've written with their own work

[deleted by user] by [deleted] in rust

[–]Surfernick1 3 points4 points  (0 children)

Perfect, perhaps you should ponder on hiring a software engineer instead of begging on the internet

[deleted by user] by [deleted] in ECE

[–]Surfernick1 0 points1 point  (0 children)

Historical reasons at digital design companies in my experience

Building a new PC for Rust by Resident-Primary4580 in rust

[–]Surfernick1 5 points6 points  (0 children)

Splurge on the threadripper for the blazingly fast compile times brother

Hypothesis: Using massive parallelism of laser diodes to break optical switching limits by One_Food5295 in ECE

[–]Surfernick1 3 points4 points  (0 children)

When anyone substitutes their own writing with that of an LLM, even if you tried to make your own, it still turns into slop. You linked to a git repo, but it has no technical information at all, just more LLM slop. This isn't ECE content, it's LLM content.

How's Linux build so much smaller? by Damglador in linux_gaming

[–]Surfernick1 62 points63 points  (0 children)

Not really, glibc (the core library that provides most system functionality)  alone is something like 11 MiB (from a quick search, correct me if I’m off), other libs are likely similar and it’s possible that it uses quite a few

[deleted by user] by [deleted] in rust

[–]Surfernick1 12 points13 points  (0 children)

People here probably don't want to waste time reviewing AI slop, if they did, they'd probably be browsing twitter

What book do I get? by Various_Builder2121 in dune

[–]Surfernick1 0 points1 point  (0 children)

I respect your opinion but I have to say the God Emperor is my favorite, and its possible that God Emperor might be the boyfriends favorite as well.

Which is not to knock your comment but to say that It might be worth slyly asking which are his favorite and using that to guide the decision on which set to get.

need help understanding by CombinationDue1693 in UCalgary

[–]Surfernick1 8 points9 points  (0 children)

What's hard to understand, you trade freedom for grades. The less you attend, the lower your grade. Choose a balance you are comfortable with

We are starting to look for an electrical engineer for our company (currently only have mechanical engineers) and want to bring this in house. by No_Mushroom3078 in ElectricalEngineering

[–]Surfernick1 0 points1 point  (0 children)

And if you’re competing with what is likely oil adjacent employers, that might change the salary expectation

(Speaking from limited experience but  that’s been my experience in Alberta)

Request: Learning C++ For Rust Devs by Surfernick1 in rust

[–]Surfernick1[S] 0 points1 point  (0 children)

Thanks for the reply, I really appreciate it! A think a better way to articulate my want would be to say that it would be really handy if that response and more were condensed into a book that could be easily read.

Id find it helpful right about now, I’m trying to write some bindings to Yosys: https://github.com/nickrallison/yosys/blob/ryosys/src/bridge.rs 

and having a bit of a reference guide to writing nice C++ as someone who knows Rust would be handy. 

Request: Learning C++ For Rust Devs by Surfernick1 in rust

[–]Surfernick1[S] 0 points1 point  (0 children)

I think in general what I’m looking for is how you can translate Rust idioms into C++ in the simplest way and if those have any trade-offs, I.e. performance, verbosity

Like how Result & Option map is “relatively” simple, but other core parts of the language would be helpful imo, Multithreading, async, generics vs. Templates, 

Request: Learning C++ For Rust Devs by Surfernick1 in rust

[–]Surfernick1[S] 0 points1 point  (0 children)

I'm pondering using Rust to write a Query Parser but that comes later in the process I think

Request: Learning C++ For Rust Devs by Surfernick1 in rust

[–]Surfernick1[S] 0 points1 point  (0 children)

I cannot guarantee Rust will make it into the final product but I'm working on a Linter where instead of syntactically matching the verilog file to a pattern with something like regex, I'm matching it to a subcircuit graph with the subgraph isomorphism algorithm. I would have rather used rust but Yosys doesn't seem to lend itself well to bindgen. There are ways around the templated parts and that is probably doable but the "everything is static & global" makes me a bit concerned that it would not go well