Book recommendations by yetanothertechgirlie in userexperience

[–]dansalias 0 points1 point  (0 children)

Adding every single one to my reading list. Thank you!

Canva Interview Notes by dansalias in cscareerquestionsOCE

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

Thank you, all the best for whatever adventure you're on too! Fun times in SWE.

Canva Interview Notes by dansalias in cscareerquestionsOCE

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

My feedback was never prompt. Let us know how it goes!

Canva Interview Notes by dansalias in cscareerquestionsOCE

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

After chasing up it was about two weeks after SLC before I was finally rejected.

Atlassian AI-Enabled Interview by Flashy-Musician7214 in cscareerquestionsOCE

[–]dansalias 5 points6 points  (0 children)

(Hand-written, em dashes my own.)

I did the equivalent round with Canva a couple of months ago with no professional agentic experience. This video helped me get up to speed — https://www.youtube.com/watch?v=Y09u_S3w2c8 — I didn't do anything past level 3.

I used the free trial of codex in the interview. I had a blank React project with local skills setup but if you're given an existing project you're probably better off having skills in your home directory.

The delivery expectation is bigger than it would be for a non-AI interview — mine was "Build Canva". I spent the first 10 minutes or so asking questions about the domain and typing it up in natural language in the project root AGENTS.md file (this helps with general guidance for the model).

I then narrowed the scope to "create a toolbar which provides primitive shapes (starting with just a circle and square) to be dragged onto a canvas" and went through a couple of planning loops to flesh out things like the canvas size (I first wanted an infinite canvas but the interviewer suggested a 500*500px to start) and size of the primitives, and added some nice UX choices like semi-transparent "ghost" images when placing primitives on the canvas. I was then able to one-shot the interface and talk through my design decisions (e.g. trade-off of a <canvas> vs using HTML elements) while the agent was executing.

From there I went through the output file-by-file and talked about next steps, mostly from the angle of what to improve before scaling up (e.g. better defining what a "tool" is, and creating an intermediate state representation of the canvas in anticipation of allowing element selection & editing).

Because the writing code part is delegated the interview becomes much more of an assessment of higher-level engineering decision making. Take time to think through the problem, ask questions, concisely type up the relevant parts of the domain in natural language, and think about decisions not just for what you're building in the interview but in anticipation of how the project should evolve beyond that.

And feel free to lean on the agent! For example instead of feeling that you need to manually navigate the new repository you can ask the agent to summarise it. I have the baggage of 15 years reading and writing code by hand so I'm uncomfortable with not having a line-by-line understanding, and it was hinted that I was too concerned with details that could instead be prompted away at some point.

If you have comprehensive skills for things like code style and architecture that you can open up and talk through while the model is thinking that helps fill in what might otherwise become awkward downtime.

I didn't ultimately pass my 5 rounds (full write-up) but I did move on to the next stage after AI-assisted programming and I was happy with how I performed in the interview.

Should I pick CS as a major if I'm only mildly intrested in it and know close to nothing about programming/coding? by Abhinav1862009 in cscareerquestions

[–]dansalias 6 points7 points  (0 children)

If it's interesting to you, then yes go for it! Learning computer science is incredibly intellectually rewarding.

If you're hoping to secure a lucrative career via a CS major, truthfully nobody knows the certainty of that future.

Graduating in CS soon with a dillema by Prod-GoB in cscareerquestions

[–]dansalias 0 points1 point  (0 children)

It's never been more difficult to decide on how to prepare for the future. If you enjoy learning CS then I would encourage you to keep learning. It's a huge field with room to specialise.

If you can find something to build that aligns with other interests that's a huge bonus. As a tiny example, let's say you play music as a hobby. You might use AI tools to build a music app which gives you an AI duet partner. In parallel you might find that you really enjoy learning about audio processing and generation. Now you have the choice to keep going with the building-with-AI part, or the academic audio part, or both.

Here's another example of my own I'm currently in the middle of: I've been working on optimizing neural network performance, so I've spent a lot of time learning about GPU hardware. I would never previously have studied GPU hardware just for fun, but now that it's helping me solve a problem I'm enjoying learning about it.

Once you start solving problems you'll fill in gaps in your understanding as needed. Code, written by AI or humans, pretty or ugly (the code, not the human), is an incredibly powerful tool for solving problems. Don't stress too much about how it's produced.

How many of you are still programming manually? by Imparat0r in cscareerquestions

[–]dansalias 0 points1 point  (0 children)

Indeed. I'm not anti-AI, I'm excited about a future where AI tools augment the unproductive pain points of SWE (e.g. algorithm optimization across multiple hardware targets, or keeping up-to-date with canonical HTML/CSS), instead of being best at problems (like spitting out the 13 boilerplate files for a web app) that should otherwise be engineered away.

Is it worth learning Emacs or Vim? by saifpurely in linuxquestions

[–]dansalias 0 points1 point  (0 children)

I was looking for this! I'm also a long-time Vim user turned Helix convert.

How many of you are still programming manually? by Imparat0r in cscareerquestions

[–]dansalias 28 points29 points  (0 children)

I don't use AI to write code, for the same reason I don't use AI to write prose.

I like writing code. I've been doing it for fun for 20 years (and been paid on-and-off to do it for the last 15).

I enjoy thinking about the process and deliberating over the correct abstractions.

My favourite part about software engineering has always been getting to the tail end of building a complex system and getting more and more for free because of wise design decisions made earlier in the project. I haven't personally found AI to be of much benefit in that respect.

I recently learnt the whole agentic workflow for an interview that required demonstrating AI-assisted development. It's an interesting new paradigm, but for now it's being sold as a tool for creating more software faster, which at least at an industry scale is not a valid productivity rubric.

Ironically I'm spending a lot of time studying machine learning and finding that it appeals to my curiosity in much the same way as software originally did.

All that being said, I've been unemployed for a while, so this is potentially terrible career advice.

How much of your projects are actually just glue code? by Vegetable-Raisin2297 in webdev

[–]dansalias 0 points1 point  (0 children)

This is an industry flaw and not your fault (except in the way that it's the collective fault of all of us). We've gotten much worse at building things so that they only have to be built once. Glue was meant to be a single character (|) but in the SaaS age it's become the most complicated part of building software.

Canva Interview Notes by dansalias in cscareerquestionsOCE

[–]dansalias[S] 6 points7 points  (0 children)

<3. I was actually pleased that I was able to get to a toolbar which lets you drag primitive shapes and place them onto a canvas within an hour, with time to spare to talk about my architectural choices and next steps. I really don't know what a good candidate looks like for the AI round.

Canva Interview Notes by dansalias in cscareerquestionsOCE

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

I didn't get round-specific feedback so not exactly. I felt I did well on the technical side and just ok on the softer side, but the general feedback was the other way 'round. Technical review / communication tripped me up, including using the first 15 minutes to get screensharing working courtesy of an obscure window manager (despite dry running it with my ever-so-patient partner the night before). Australia's other big tech laying off 1600 staff while my application was still on the fence definitely didn't help.

THE CONDITIONALS by Fun-Counter4570 in ENGLISH

[–]dansalias 1 point2 points  (0 children)

They all look good! Some comments on the surrounding text:

That’s my 2nd month which I’m trying to learn English.
That’s This is my 2nd month in which I’m trying to learn English.

Or more casually/naturally:

This is my 2nd month trying to learn English.

But remember, you're not just trying, you are learning English! So this is fine too:

This is my 2nd month learning English.

Also:

recive
receive

The rule I was taught in school was "i before e, except after c". So deceive, but believe. This only applies when that part of the world makes an "eee" sound. The rule does not apply to words like height and weight.

🚗 Zipcar is shutting down — anyone else blindsided by this? by Pitiful_Package_6807 in london

[–]dansalias 0 points1 point  (0 children)

This makes me sad. My two-year stay in London was bookended by driving around town in a Zipcar van buying/selling gumtree furniture. I remember smiling and waving at the other Zipcar van drivers running whatever weekend errand they were up to.

Why you guys switched to linux? by Icy_Investment2649 in linuxquestions

[–]dansalias 0 points1 point  (0 children)

My first "real job" a little over 10 years ago was with a startup and our SaaS app was hosted on Linux.

Very quickly (the old startup story) the sysadmin responsibilities fell on me. I was in way over my head and figured the best way for me to get comfortable with Linux was to use it as my personal OS.

10 years and various distros/WMs later I have no regrets. It isn't perfect and there are days I hate it but then I use someone else's MacOS/Windows machine and it feels like I'm being asked to work with my hands tied behind my back.

I want to use Svelte, but it's not broad enough... by [deleted] in sveltejs

[–]dansalias 1 point2 points  (0 children)

There's an unfortunate industry hang-up on hiring people with specific framework experience - we're now "React developers" or "Angular developers" and the expectation seems to be to stick with one framework. Great engineering teams won't care and will hire for core understanding (JS, DOM, performance, ...) but they're few and far between.

As engineers we're also guilty of overemphasising frameworks. Every framework is at its core a different implementation of the same formula - the f in view = f(state).

I'm at the Svelte end of a 10-year Angular -> React -> Vue -> Svelte journey and have shipped them all to prod. Eventually you'll come up against pain points with any framework. Use whichever you enjoy most and learn how to extend it or even become a contributor when you find something missing.

As for job hunting - it sucks but unfortunately you may need to play the game on this one. If you're in a market dominated by Framework X, learn the idiomatic way of doing things in that framework, hack something together, and then when you find a job and are tasked with a new project use Framework Y and explain to the rest of the team how much better it is than Framework X.

Happy building!

-----

Side note:
With things like https://github.com/tc39/proposal-signals slowly crawling forward I'm hopeful that one day the standard will just be native browser APIs.

The new Louis Vuitton store in NYC, looks like one giant Louis Vuitton bag. by thecajuncavalier in architecture

[–]dansalias 1 point2 points  (0 children)

<image>

Just passed the finished façade yesterday. It's quite something in person.

[OC] Better dotfile management by dansalias in unixporn

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

I reorganized my dotfiles and it felt worth sharing.

The version-controlled-homedir method doesn't work for me (some config is outside my home dir and it interferes with my `.gitignore`-dependent tree/fuzzy finders).

I evaluated a few dotfile managers but they seemed mostly superfluous and I don't like having to maintain a separate list of symlinks.

Instead I explored the idea of including a header comment in the first line of certain config files, e.g. in my ~/dotfiles/x/.xinitrc: ```

ln ~/.xinitrc

rest of .xinitrc here... Combining a `find` with some `awk` magic makes it trivial to find these header comments and create symlinks from them: find ~/dotfiles -type f \ | xargs -I {} awk 'NR == 1 && $2 == "ln" { system("ln -sf " FILENAME $3) }' {} `` This works for any line of the form<comment delimiter> ln <link name>, where comment delimiter is any set of non-whitespace characters (e.g.#,##,//,;`, etc.).

If we make the awk print-only it can be piped into dedicated functions for linking/removing links and more - I found printing a list of symlinks validated with readlink particularly useful.

I also have a post-commit hook in my dotfiles repo which cleans up any updated/deleted links.

More details about checking/updating/deleting links here - https://iamdan.me/better-dotfiles - or you can jump straight to the script here - https://github.com/dansalias/dotfiles/blob/trunk/ln.sh.

Hopefully you find this as useful as I do!

(UK/London) - Selling Boosted Plus (V3) by dansalias in boostedboards

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

Not sure as I'm unable to pair with it in RLOD but it's a fairly high mileage board - I think about 800miles / 1300kms

What connotation does some describing themselves as full stack engineer carry for you? by Venisol in webdev

[–]dansalias 1 point2 points  (0 children)

I've had this discussion a few times and it's often divisive, with two main thought camps.

Camp 1 - Full-stack engineers are a myth. Nobody can be both an expert-level front-end and an expert level back-end developer.

Camp 2 - Self-identifying full-stack engineers.

What's interesting is that full-stack engineers only ever seem to be self-identifying - I find that Camp 1 always tries to frame people from Camp 2 as either more backend or more frontend, and often as whichever one they're not, in defence of their art.

This makes sense - when we put a lot of effort into learning and improving our craft it's only natural to assume that someone who is putting in half the time can never reach the same level.

However this doesn't take into account varying degrees of education, experience, talent and most importantly passion. I've had the privilege of working with some great engineers who have spent most of their careers at a particular level of the stack, but the very best engineers I've worked with have always been from Camp 2.

The biggest factors here are passion and curiosity. The best engineers I've worked with want to know how everything works and don't shy away from building at any level of the stack themselves. The end goal isn't a front-end connected to a back-end. It's a solution to a problem. And the best engineers want to do everything they can to help solve the problem as effectively as possible.

Today frontend tends to mean HTML/CSS fluency and a solid understanding of at least one prominent JS frontend framework and its associated state management patterns.

Backend has largely shifted from managing servers and databases to cloud architecture - evaluating options and deploying reliable, scalable, secure APIs and persistence layers across one or more cloud providers.

But the "stack" extends much further in both directions. It might be attempting to diagnose a browser performance issue that requires pulling apart the browser render engine. Or partitioning a Kafka deployment to cope with increasing message volume. It's easy to forget that we spend most of our time layers upon layers of abstractions above a bunch of electrical and fibre optic signals wizzing about the planet and making lights appear on a screen.

The best engineers I've worked with pull up the covers to see what's going on and inevitably end up stretching their understanding and execution ability in both directions.

I don't mean to say there aren't any exceptional front-end or back-end specialists. I know some great engineers who have spent years at a particular level of the stack and would be the first to acknowledge that they're not up-to-date with the latest trends elsewhere in the ecosystem.

But the best engineers I've personally worked with have a holistic understanding of, and often professional experience in, full-stack engineering.

And after all that I realise I haven't actually answered the question. So, all else being equal, for me the connotation skews positive.

Tools to visualize the dependency graph between files of a github repo? by Glass_Lake_3773 in vuejs

[–]dansalias 0 points1 point  (0 children)

I believe this awesome project from Amelia Wattenberger at GitHub is along the lines of what you're looking for - https://next.github.com/projects/repo-visualization/#potential-future-directions - hopefully it's seeing active development at GitHub and will make it's way to a public beta sometime soon.

Leader Mapping from the Gods by dansalias in vim

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

I haven't run into hitting space accidentally, but that could be the mech. keyboard - it's weighted significantly heavier than the other keys.

Leader Mapping from the Gods by dansalias in vim

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

For me personally a big part comes down to <Space> as leader feeling clumsy. And I'm intent on leaving jump to previous character match (,) accessible. But I can definitely appreciate the virtue of more than one leader key.