4 ms·
Rudroid: Writing the World's worst Android Emulator in Rust
- garbagecoder 5y agoWhat language something is written in is not a feature.
- nicoburns 5y agoThis is more like a tutorial than a product though, with code examples in Rust. "How to write an android emulator from scratch in C" would appeal to a slightly different audience.
- BiteCode_dev 5y agoMarketting is not mostly about features.
- baktubi 5y agoIt’s about connecting with the audience—using fact or fiction.
- Closi 5y agoFeatures are something that matter for products, which this isn't. This just seems like a project that someone wrote and decided to share with the world, and show how it works with full source code. In that instance, the fact it is written in rust is relevant because, as noted in the first paragraph, the reader is expected to have a working knowledge of Rust.
- makapuf 5y agoDepends, sure it's not the main quality of a software. But it can also hint at some potential features of the language (unless proven wrong) : Speed, safety, potential interest for longer term. You can have ultra lean software written in Java, ultra fast written in Python or simple to understand / develop to written in Rust or C, modern written in C++98, but it's generally the other way around. So, it's not the first thing to mention when speaking about a program, but interesting nonetheless, an element of context.
- jeltz 5y agoIt should be obvious from even just the headline that this is not a real product but instead an article about how to implement an emulator, and for such articles the language is very relevant. Or do you also think that being the worst is another feature?
- omnicognate 5y agoI'm finding all the bellyaching about people saying X was written in rust a lot more annoying than what's being complained about. But then this comment is 3rd-order bellyaching so feel free to downvote it.
- Ygg2 5y agoThere are only two types of programming languages. Languages people complain about, and languages that no one uses.
- deleted 5y ago[deleted]
- scns 5y agoI'm in no way shape or form smarter than Stroustrup that's for sure, but there might be space for a third category: languages seldomly used in dayjobs but many programmers would love to. Elixir, Haskell and Rust come to mind.
- pjmlp 5y agoDepends, some time it does matter when security and performance are part of the non-functional requirements, validated on project acceptance delivery.
- bbarnett 5y agoIt is, if you have an advertising budget.
- jhgb 5y agoWhat if that something is a library?
- eatonphil 5y agoThis is awesome! I did a similar barebones emulator for x86 ELF binaries but I took a few shortcuts. I shimmed _start in the emulator and just jumped to main. Then I called exit back in the emulator when main returned. I haven't yet gotten to implementing syscalls but the simple ones (write, exit, etc.) aren't terribly hard once you have the general infrastructure. https://notes.eatonphil.com/emulating-amd64-starting-with-elf.html https://notes.eatonphil.com/emulating-amd64-starting-with-el...
- ant4g0nist 5y agohey, nice article :)
- melbourne_mat 5y agoI'd like to check this out but that web site kills my mobile browser every time. What are they doing?
- ant4g0nist 5y agoHey, I'm the author. Sorry for the trouble. Some people on reddit (https://www.reddit.com/r/netsec/comments/phufsk/rudroid_writing_the_worlds_worst_android_emulator/ https://www.reddit.com/r/netsec/comments/phufsk/rudroid_writ...) also commented the same . It's mostly due to the content size/image sizes. You can access the content here: https://github.com/ant4g0nist/rudroid https://github.com/ant4g0nist/rudroid
- eatonphil 5y agoSince you're taking presentation suggestions, I totally missed the collapsed code the first few times reading through this post. I don't think you're the only blog to do this collapse-by-default code but every blog that does this I always miss the code. So my suggestion would be to just not collapse. In my own blog I just set a max-height of 600px or something so long code snippets don't get unruly. People can scroll through or go to Github if that gets annoying. But at least there's no chance of them missing the code in the first place.
- ant4g0nist 5y agosure, noted. Currently, it's a 50 lines limit for collapsing.
- ant4g0nist 5y agoHey, I'm the author of the post. If any of you have some issues loading the above link, you can also access the post here: https://github.com/ant4g0nist/rudroid https://github.com/ant4g0nist/rudroid