I have an AMD 13" running Linux that I've used for a little over a year. I love it, would absolutely buy it again. The 7840U is a great processor, and one I'm happy to sit on for a little while -- works fine for what I need it to do, fairly efficient, and even plays some modern games pretty well. A few random thoughts:
- All the hardware works out-of-the-box in Linux, at least as far as I can tell.
- Swappable ports seems like a gimmick, but it's nice. A few months ago I realized I'd rather have a built-in Micro SD port than an extra USB-C, and that change was trivial.
- If I had bought a traditional laptop, I would have been very annoyed to have an upgrade with a much nicer screen and webcam released 6 months or so after buying the laptop. Instead, I just bought the new screen and webcam module and swapped them in in less than 15 minutes.
- Speaking of the screen, I've missed matte screens ever since Apple went glossy. It's really nice to go back. The 3:2 aspect ratio is a huge bonus, the extra vertical space is useful.
- On Linux, I get around 5-6 hours of battery life under my normal use, 8 or so under light load. That's more than enough for me. Finding a way to charge has never really been a problem since laptops switched to USB-C charging.
- The trackpad is fine. It's better than most non-Apple laptops I've used, but it's still nowhere close to a MacBook's.
- Most of the early issues with the processor have been solved with newer kernel versions. There's still a crashing issue that prevents running large accelerated LLM / image models: https://gitlab.freedesktop.org/drm/amd/-/issues/3482. This isn't a problem with the Framework specifically, but I wish they provided a BIOS option to reserve more VRAM.
- I'm very much looking forward to upgrading the RAM later without buying a new machine. I'll probably do this when the above bug is fixed.
- I wish there was just a little more focus on the details. For example, the swappable port modules don't sit exactly flush with the case on the right side (they're just barely recessed too deep) and it annoys me a bit every time I see it.
Overall though, it's my favorite laptop I've owned since the 12" MacBook. It makes me happy every time I use it.
devkitpro (https://devkitpro.org/) is the toolchain and base libraries, and sets up a package manager for downloading others.
For the basic stuff you can use the usual C libraries. I picked up a lot by reading and tweaking the examples, which are installed along with the toolchain: https://github.com/devkitPro/3ds-examples
libctru, installed with devkitpro (https://libctru.devkitpro.org/) is where a lot of the platform-specific APIs live. There are also some higher-level libraries built on top of it
A good understanding of ARM will take you a long way. A lot of what documentation there is (especially on 3dbrew.org) assumes you understand the terms and general architecture of an older ARM platform. This book https://www.brucesmith.info/arm-a32-assembly-language/ was great for building enough understanding that I could understand most of the official reference manuals. From those, I found the ARMv7 reference manual and the ARM11 MPCore Technical Reference Manual to be the most useful, and I refer back to the ARM instruction set reference card a lot.
Besides that, it's reading and modifying the source of other projects, and trying things out. If you look at homebrew apps like ctrQuake (https://github.com/masterfeizz/ctrQuake), you'll notice there's usually not a lot of platform-specific code -- most is just standard C / C++.
Hope that helps. Just like anything, it's knowing enough to get started (a toolchain, some C, and some examples) and using your questions and ideas to draw you into the next thing to learn.
Absolutely agree. I just got into 3DS development last year and it's been such an exciting development experience. The open-source tools are excellent (even supporting remote debugging!), and the system hits that sweet spot between being powerful enough to build interesting things and taking real work to make those things fast.
Over the last year or so I've been squeezing individual fps's of performance out of the PSX emulator and it's been some of the most fun hobby programming I've done in a long time.
Plus you can write for a platform with a 3D screen! How cool is that?
For hobby development, I'm trying to speed up the unofficial PlayStation emulator on the Nintendo 3DS. There are all kinds of interesting problems there, like SD reads being so slow that it tanks the framerate any time the emulator hits the disk (so I might be writing a read thread + precache?), and some apparent room for hardware-specific optimization in the lighting and blending routines.
It's been fun to work around the constraints on an underpowered device. It's also an excuse to learn ARM assembly, and a nice break from all the JavaScript I've been spending my time in lately!
I wanted to dip back into Linux, and found a ThinkPad x230t for around $70. I'm amazed by how much I like it. I'm running mostly vanilla Gnome on Arch. Every piece of hardware just works. You can take the entire thing apart with just a normal screwdriver. Tablet mode has been great for reading papers and articles on the couch. It's a common enough linux machine that there are tons of setup instructions and suggestions written specifically for it. With an SSD and 8-16GB RAM, it's plenty fast.
It's bulkier. the screen is non-retina and a worse aspect ratio. The fan is noisier. Turns out none of these things bother me anywhere close to what I expected. Hardware-wise, the only annoying thing has been the terrible speakers. Then again, I'm usually on headphones. I miss USB-C ports and USB-C charging, but not too badly.
On the other hand, I had almost forgotten what a good laptop keyboard felt like, and after getting used to the trackpoint, I like it a lot.
I still use a Mac for work, but as a lot of my favorite Mac software has gone subscription-only or subscription-preferred, I've gradually moved more toward open-source options: password-store from 1Password, org-agenda from OmniFocus, etc. So the change wasn't as big or as hard as I was expecting. Decoupling from iCloud will definitely be a thing (photos, iTunes Match, etc.), but I'll figure it out.
edit: Forgot to mention matte screen! Don't know why all the manufacturers thought glossy was the way to go, but it's nice not having to stare at a reflection of the room around me all the time.
Avvo (http://www.avvo.com) | Seattle, WA (ONSITE) | Rails API/Backend Developer
We’re looking for great software developers to help us connect people with the legal help they need.
As an API / Backend Developer, you’ll build fast, easy-to-use APIs to help our Mobile team ship remarkable apps. You’ll bridge between our iOS, web, and platform teams, and help us unlock new ways to bring our data to other apps and devices.
About You:
- 3+ years of API development experience with frameworks such as Rails, Django, or node.js (or others!).
- Strong CS fundamentals: A good knowledge of data modeling, object-oriented design, and algorithms.
- You’ve worked with multiple product teams at once, and can make the right tradeoffs based on those teams’ needs.
- You can clearly explain complex ideas without buzzwords and jargon.
- You love to mentor and be mentored. You live by the philosophy that everyone has something to teach you.
- You’re addicted to shipping, solving problems, and helping the people around you succeed.
About the Team:
- We mostly run on Rails, but have brought in technologies like Go, Angular.js, Scala, and Sinatra. We’re open to using the right technologies for what we build.
- We iterate quickly, and ship multiple times a day.
- We work in small teams with product managers and designers, and help shape the products we’ll be building from day 1.
- We have a strong tradition of supporting open source. Projects like resque_scheduler, robut, resque_unit, and json_api_client were all extracted from our codebase, and we’ve contributed several patches back to Rails.
Why Avvo?
Right now, you have an opportunity to join the team while it’s still on the small side, and grow your career faster than you would at almost any other company. You’ll be able to help shape our dev organization and define our culture.
Companies in our position are rare, and joining a company like ours will be one of the most memorable parts of your life.
(Side note: I've been here 8 years, and still love it. It's an awesome place to work.)
Yep! I was actually planning to drop the discount today (since it was originally a pre-order discount), but figured I'd extend it by a day or two for the release.
I know where you're coming from, though -- I've seen a bunch of scammy countdowns too, and those "only 17 copies left (of this book I can make infinite copies of)!" on other sites :-)
I've been writing posts about Rails on http://www.justinweiss.com for a little over a year now, and I've heard from so many people that are excited about Rails, that have bought all kinds of videos and tutorials and courses and bootcamps, but just can't build their own projects.
So, I wrote a book to help. It's not so much a Rails tutorial as it is a guide to programming, project management, and motivation, using Rails as a medium.
"If you are encountering trouble with inbound Twilio requests while mitigating the SSLv3 vuln, contact [email protected] for direct help."
(That is, they have to manually enable TLS on your account.)
Also, if you're using GET requests with ExactTarget, you'll run into the same thing, but I haven't heard back from them if / when they'll have that fixed.
* Bad estimates. When people are too aggressive with their estimates and miss them, it derails everyone that was depending on that team's stuff being done at a particular time. It causes blockages that cost way more than an over-estimate would have reserved as buffer time.
* Getting distracted. Dev should work really closely with design and PDM to get things done, but if Design / PDM has already moved on to the next project, it's distracting for everyone when they have to get pulled back in. Then, you have multitasking, and blockages, and stuff doesn't get done as smoothly as it should.
Feel free to contact me directly: [email protected], and let me know you came from HN.
We're looking for a Web application developer to help shape the way people connect with the lawyers who will make a difference in their lives.
At Avvo, you'll get to work with smart, passionate people in small, focused, cross-discipline teams building Web, iOS, and Android applications. You'll take a product from conception to completion, shaping its direction the whole way. You'll have the flexibility to build each project in the way you think is best, using the best tools and technologies. You'll own the development of the project from the front end to the database layer.
We use whatever tools and technologies we think are best for the situation, including Ruby, Rails, Redis, Solr, Git, Chef, SASS/Compass, neo4j, Sinatra, Objective-C, and EC2.
We're looking for:
* Passion for building software. Huge bonus points if you've built or maintained open source software or side projects. (Send us your GitHub profile!)
* The ability to identify and institute software best practices throughout a team and organization.
* Someone who can provide technical leadership. You should be comfortable mentoring new developers, sharing knowledge across the team, driving a new project from the beginning, and thinking about how projects and teams will interact on a strategic level.
* Experience working on a large software project over several years. You should be able to reliably add features to shipped code, identify and reduce technical debt, participate in the product design process, estimate accurately, and provide quality feedback to the rest of the team.
* Enthusiasm for learning about new technologies and sharing them with your coworkers. We've seen huge productivity improvements from using new tech, so a keen eye for cool new stuff is a plus.
* Collaboration with other disciplines - you'll be working closely with designers and PMs, and it takes everyone's skills to build something remarkable.
* A strong desire to build the best product for your customers, no matter how long it takes to get there.
We'll give you:
* A competitive salary and generous stock options.
* The machine of your choice.
* Three weeks of vacation each year.
* Paid conference expenses, books, and classes.
* A great working environment in a beautiful building in the International District, on the bus and light rail lines, walkable from Belltown, Downtown, Capitol Hill, and Pioneer Square.
* A free ORCA card for all your public transportation needs.
* A strong work / life balance - we'll ask a lot of you while you're here, but we're not going to make you work 10-hour days.
Besides all this, I've been here for almost seven years and I still love it. Devs really get a lot of freedom and autonomy here, and we get to work really closely with other disciplines like product, design, and marketing. I love that, since we all get to learn from each other. And we ship code all the time.
After a few years of Java and C# (especially in finance) I came really close to leaving the software industry altogether. Ruby, and then Rails, brought me back into it.
They returned the joy and excitement I felt when I first got that ASCII eye to blink from the 250 lines of BASIC I typed in from the back of a magazine.
When I was still at MS, a lot of these kind of bugs didn't get fixed -- the code checking against the old (smaller) path size would often not be owned by anyone anymore, and nobody wanted to touch it (because that would make them the new owner).
I've seen this problem when using @font-face generators that remove font hinting to save space. Last time I used FontSquirrel's generator, I had to specifically unset the option to remove hinting in order to get the fonts to look right on Chrome on Windows.
Mastodon: https://mastodon.justinweiss.com/@justin GitHub: https://github.com/justinweiss Email: [email protected] Web: https://www.justinweiss.com