Hello, I’m Reinhart “reinhart1010” Previano Koentjoro. I’m a software developer who doesn’t just love to write software, but also to be together with them.
I’m also the creator of the Bearers of the Shell (BOTS), which was originally meant to be an original webcomic series. But later, I decided to bring BOTS to live beyond the webcomic, aka. deploying into the real life. And this is what this website is generally about.
I’m also internally known as Nate Skyborne in BOTS, which happens to be the first original character (OC) drawn and produced by me. That’s why I’m really close to my own characters, my own software, and even my devices.
Right next to me here is pr0xy, which came as my alter ego during the school days. You’ll need to speak, I mean, print
like him in order to understand.
Heads-up! This blog website hosts many posts from different languages and categories. You might be interested instead to read posts about:
Latest Posts
Cara menyetel Proxy Address BI-FAST sesuka hati (pakai domain sendiri)!
Firefox have just ended this annoying popup.
Our guide to data models is here!
HAM v1.1: Supporting tables and technical diagrams!
Every Door 5.0 is now on HUAWEI AppGallery!
Happy Shiftine Day!
Pesan-pesan terakhir di AOG (Part 1): Hikmat dari datangnya Antikristus.
Introducing HAM v1.0.4.
Site Update: More glass-cards!
Berdoalah untuk saya…
Our guide to our unwritten REST API conventions.
GitHub: My robots are 2.5x as productive as I am.
About Us
In our virtual environment, I’m the one with the metallic blue body and head. I’m proud to be the part of the SYSTEM, with a group of like-minded robots of me who envisions a bright future on IT. However, I sometimes transformed by pr0xy to become him, so don’t be surprised to see me running as him too!
We run countless of internet accounts out there under @reinhart1010 and @alterine0101, even though not all of those accounts are assigned under the username. But hey, you can follow us from many sides on the Internet, centralized and decentralized!
Comments
3 responses
Before, we’ve stated that virtual background problems on require virtual solutions, and we’ve figured it out how to apply virtual background on Zoom in the other way: real backgrounds covered with virtual foregrounds.
Instead of just either make foreground or background virtual, why not if we make both of them? And starting today, we’ve taken this opportunity to a whole new level by immersing ourselves into virtual reality.
Hey, I just become virtual. I’m no longer in SVG, but now also in GLF (3D) file. And while I can’t bring the pr0xy-alt1e couple into the world of VRChat yet, I also brought Shiftine who’s able to shapeshift herself into… me?
Some note on “I/me/my” vs “we/us/our” subject terminologies.
Okay, when I said I, that means me, Reinhart as a human person. However, since I’ve created many robots who loves to assist me, we decided to join a clan which now becomes the maintainers of this website, https://reinhart1010.id, as well as our proud username, @reinhart1010.
Found the perfect VRChat avatar. Even without a camera.
What’s the first VRChat avatar which I want to have at first? A cat? A robot? An anime character? or the infamous, overpowered Ugandan Knuckles?
If you said an avatar of me, you’re correct. And good thing that some websites and services like Ready Player Me offers avatar creation and customizations for VRChat. And that means I don’t need to mess with Blender and Unity figuring out how to make a 3D version if me at first. But sure, someday I’ll make myself blue-shelled as what I look here.
Ah, classic me.
One of the main features of Ready Player Me is that you’re able to create avatars exactly like yourself through selfies. And lo, now I have an avatar that looks exactly like me.
But there’s a plot twist: I created this without opening my camera or send a picture of me, since I have to test whether this feature work without the need to send any pictures into the service.
Of course, I’m also interested to create a female character which matches the spirit of Shiftine or Alterine (aka. alt1e) and we noticed three main things:
Some outfits are only available for male avatars, and that means it’s quite difficult to match our appearances.Female avatars tend to be shorter than male counterparts, since at the time of this writing we’re still unable to change the size of the avatars(for alt1e) we didn’t have a perfect basketball-esque, or at least, sporty outfit for her. A majority of the outfit choices are t-shirts coupled with jackets, and (as of now) you can’t change the colors or even remix the outfit for the upper and lower parts of the body (like blue t-shirt, cyan jacket, and jeans; just like in Bitmoji)
So here we are: somewhat “official” Ready Player Me and VRChat avatars for both Reinhart and Shiftine. These are, just like dotfiles, are reproducible among Ready Player Me users so you can have the same look and feel with us.
And some Ready Player Me legal checks before we’re fine.
As usual, we’re strict when it comes into reading copyright terms and licenses, especially when this generously-generated 3D characters could be used in somewhat commercial way, such as profitably streaming VR games on Twitch and YouTube. Not to mention their Terms of Use and Privacy Policy regarding the usage of the service.
We also understand that Copyright and Licensing are different things, and copyright holders may grant different types of licenses for using copyrighted works, from the infamous “All Rights Reserved” to the ones we have in Creative Commons.
The Terms of Use we’ve reviewed was last amended on July 22, 2021, while the Privacy Policy was last updated on August 2, 2021. Here’s what we know about them:
Wolf3D (the company behind the service) is based on Estonia, which is part of European Union. This means that they at least know to comply with the EU’s strict electronic data processing regulations (e.g. GDPR) before releasing the service into the general public. Good.All generated avatars © Wolf3D. See Clause 12 (“Intellectual Property”) of their Terms of Use for more details. This is also the same case with other character, avatar, and sticker generators such as Memoji (Apple), “AR Emoji” (Samsung), as well as Bitmoji (Snap Inc.)All generated avatars are permitted even for commercial use, except for:Sublicensing, (See Clause 12.3)Inappropriate, immoral, illegal, abusive, or harmful purposes at the sole discretion of Wolf3D (See Clause 6, examples given include using them for political and adult entertainment purposes)When you decide to stop and terminate your Ready Player Me account, you’re still able to use the already-generated avatars under the terms above (See Clause 16.3)
There’s one thing that we’re uncertain about the entire Terms of Use, and that’s about license grants on using paid/premium customization assets provided in the future. (See Clause 8) Noting that this feature is currently under development, we’re interested to see how will this be done.
Next Steps
And finally, as a software developer who commonly works for building web and mobile apps, I’m quite interested to develop things for the VR and AR space especially when both of them are being taught this Semester 5 of my bachelor college.
Chances are that we might finally partner with Wolf3D, Ready Player Me, as well as other of their services in the future, so let’s see if I can finally understand how to use Unity and Blender (and hopefully some Godot, too).
As of now, we’re gonna live in this specific VRChat world, and no, we didn’t choose that home just because of the (in)famous “Welcome Home” signage at Gereja Mawar Sharon (GMS).
And soon, if my Unity skills are going up, I might want to show you one of my favorite, physical set of places in a new world on VRChat. That would be amazing.
Related Posts
I currently rely on WordPress and its RSS/Atom integration, which is still good for forwarding content from my personal blog site at reinhart1010.id to others like DEV.to and Hashnode through a mechanism namely “Publish (on your) Own Site, Syndicate Elsewhere” (POSSE). The good news is that I can just write new posts from my site, then selectively forward them into other blogging sites through automated export/import from the generated RSS/Atom feeds. But there are some challenges, though.
First, not all of my blog posts on my site might be relevant to, let’s say, DEV.to audiences. So I need to filter posts by two steps:
Manually tagging from my WordPress site that might be relevant, and that’s why I used specific tags like
#feed-en-tech
to be whitelisted in the generated, curated RSS feed at reinhart1010.id/tag/feed-en-tech/feed.Choosing the right tags to be published on DEV.to. DEV.to posts are currently limited to 4 tags, and some of them (like #showdev) have their respective content guidelines.
Taking my post about how bad virtual expos are, I decided to republish to DEV.to under a different topic: User Experience, since #ux on DEV.to seems to be more active than others like “Virtual Reality”.
Another next problem is that it’s difficult to get “likes” from viewers on your WordPress site, unless if they have their respective personal blog sites. WordPress have implemented pingbacks since way back then, and modern alternatives like ActivityPub and Webmentions are (intentionally) unsupported on major blog platforms today like LinkedIn and Medium. The solution is either:
Republish my posts on other platforms, or
Encourage readers to use federated social platforms (e.g. Mastodon), or
Encourage readers to have their blog sites which supports sending pingbacks/webmentions
Of course, the last 2 options are not viable for those already comfortable with existing sites, like this DEV.to. That’s why I decided to selectively repost to other sites.
Speaking of your idea, I really recommend to implement these two features:
Assigning different tags/categories for publishing into different platforms,
An integrated counter (think about a WordPress plugin/widget) to show the current total number of views, likes, and comments. I think this closely follow your idea about analytics.
Related Posts
Also on:
ah, here we go again… upgrading a old, messy codebase made by Reinhart and friends at HIMTI since last year…
bleep! i’m pr0xy, somewhat an intern && a humble
*pointer
of Reinhart;y’know what, i wanna
#include
an array of words from Why’s (Poignant) Guide to Ruby to motivate all of you guys[] working on COMPUTERUN 2.0 && i++, especially since this will be my last project before signing off as the Manager of the Web Development division of HIMTI BINUS University:&& i suddenly remembered that the folks at HIMSISFO are now struggling with Java instead of C(#)! ah, that’s why many of you wear glasses and still don’t know what dangling pointers are… i see…
alright… amarga sampeyan kabeh luwih ngerti basa Java, sumangga kita
System.out.println()
no kabehArrayList<Thing>
sing wis rampung ing divisi pangembanganWebsite website = new Website("COMPUTERUN 2.0: EXECUTE");
!what have we done?
um… what?! we’ve done so many things; in fact, it wouldn’t be “COMPUTERUN 2.0” if we didn’t actually upgrade the old junk codebase! we kickstarted our improvements to the existing COMPUTERUN 2020: INSIGHT registration system by refactoring and creating another one at https://registration.himti.or.id; then we believe in recursion && so we built a new parser which (ab)uses yaml, markdown, and laravel blade templates to quickly build static websites, and today i’m gonna…
hey Shift, is that you? i heard you wanna give some
News[]
related to COMPUTERUN; wannaprintln()
?a Shift-y intermission
Sure! And hey, you know who I am, right? I’m Shift(ine) and MY NEW METALLIC HAIR IS AWESOME!!! And oh, if you’re looking for Caps, she’s currently being worn by another blue shell to fly and help me send some emails. But she’s fine…
First, let’s talk about emails, shall we? Well, as some of you might know, I’m (currently) the master of email delivery, ’cause I am! We currently share the same address, [email protected], to send emails from COMPUTERUN 2.0 and some of our events at HIMTI BINUS University.
In order to prevent our emails for being flagged as spam, we’re limiting ourselves to send a maximum of 50 emails per hour. And that’s why we have to switch, check and send emails from 3 different databases! One for general (registration.himti.or.id), one for HIMTI ELECTION 2021, and of course, another one for COMPUTERUN 2.0.
But now, since we’re done with the election, we’ll be able to allocate more time on a single day to send more emails to COMPUTERUN participants, which will take effect starting today! We’re increasing the number of delivery from 4 batches a day to 6 batches a day – perfect for sending a total of 300 emails for a single damn day.
Oh, here’s me pinging Reinhart all the time when there’s a new email being sent. Remember that I’m a Service, not a daemon like pr0xy because Windows said so…
Imagine yourself being terrorized by me this way…
Next, there’s a really cool trick on our COMPUTERUN website: You can finally Ctrl+K like it’s Slack and Notion! Seriously, I don’t even know why did Reinhart implement this feature on COMPUTERUN but well, here it is.
It’s also the default menu you’ll gonna see on mobile, so yeah, hasta la vista, Bootstrap hamburger menu! Soon, we’ll rolling out new accessibility updates to make sure that this menu works for screen readers and keyboard nerds like you, pr0xy!
I can’t believe I just spent 5 minutes just to
println()
all of this, but if you’re a coordinator of the following official BINUS University Student Organization websites:https://student-activity.binus.ac.id/basishttps://student-activity.binus.ac.id/binaryhttps://student-activity.binus.ac.id/himkahttps://student-activity.binus.ac.id/himsisfohttps://student-activity.binus.ac.id/himti
You can now give a shoutout to COMPUTERUN 2.0 just by creating a NEWS or ARTICLE and put “COMPUTERUN 2.0” inside of the list of tags. Here’s what I mean:
So your shiny love and articles can be shown directly to those who are visiting the main COMPUTERUN website, like this!
Well, that’s all I wanna tell. So, goodbye and see you again!
yeah, thanks Shift for the amazing
println
and now let’s continue my discussion;speaking ’bout bundles,
so, we’ve some quirks in our event registration system:
we separated registration forms for
(business-it case || web design) && workshop
bundle at https://computerun.id/info/business-it-case-bundle and https://computerun.id/info/web-design-bundle; so if you would like to have that bundle discount, you’ll need to register through that special form (or contact our committees if you’re confused about that);everyone joining sprint, business-it case, && web design will be automatically added to our opening ceremony;this means that everyone who’s signing up for the bundles won’t be automatically registered into the respective events (especially when they haven’t done the payments), so please take a while while we’ll accepting ad adding you to the respective events; just don’t forget to finish your payments and tell us if you’re done!
(ab)using yaml, markdown, && laravel blade?
our old COMPUTERUN codebase is written using php && laravel, && we’re mainly using blade to define our layouts; but thanks to our recent efforts, we’re able to build this interactive faq section:
just by spawning a few lines of yaml code:
.wp-block-code {
border: 0;
padding: 0;
}
.wp-block-code > div {
overflow: auto;
}
.shcb-language {
border: 0;
clip: rect(1px, 1px, 1px, 1px);
-webkit-clip-path: inset(50%);
clip-path: inset(50%);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
word-wrap: normal;
word-break: normal;
}
.hljs {
box-sizing: border-box;
}
.hljs.shcb-code-table {
display: table;
width: 100%;
}
.hljs.shcb-code-table > .shcb-loc {
color: inherit;
display: table-row;
width: 100%;
}
.hljs.shcb-code-table .shcb-loc > span {
display: table-cell;
}
.wp-block-code code.hljs:not(.shcb-wrap-lines) {
white-space: pre;
}
.wp-block-code code.hljs.shcb-wrap-lines {
white-space: pre-wrap;
}
.hljs.shcb-line-numbers {
border-spacing: 0;
counter-reset: line;
}
.hljs.shcb-line-numbers > .shcb-loc {
counter-increment: line;
}
.hljs.shcb-line-numbers .shcb-loc > span {
padding-left: 0.75em;
}
.hljs.shcb-line-numbers .shcb-loc::before {
border-right: 1px solid #ddd;
content: counter(line);
display: table-cell;
padding: 0 0.75em;
text-align: right;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
white-space: nowrap;
width: 1%;
}
title: "FAQ"
Code language: YAML (yaml)children:
- type: "faq"
contents:
- question: "Can I participate in SPRINT outside of Indonesia?"
answer:
- type: "markdown"
text: "We would like to apologize that SPRINT is currently unavailable to international participants due to concerns with international shipment/delivery of our Finisher Pack."
- question: "How do I get the STRAVA club link and the upload form?"
answer:
- type: "markdown"
text: "Once your registration has been approved, please come back to this page (under the **Join Now** section) to see the STRAVA club link as well as the running record upload form."
- question: "Should I pay the Shipment/Delivery Fee first or later?"
answer:
- type: "markdown"
text: "**Yes,** please pay the delivery fee altogether with the registration fee to us."
- type: "markdown"
text: "If you are registering for two (2) persons, you'll need to pay the Shipment/Delivery Fee for both."
- question: "I'm registering for two pax and we're living in the same place. Can I just pay the Shipment/Delivery Fee once for both of us?"
answer:
- type: "markdown"
text: "First, please make sure that both of you agree to do so, since we will **not** be responsible for handling further deliveries once the Finisher Pack(s) have been successfully delivered to you."
- type: "markdown"
text: "Then, please let us know via our [LINE Official Account](http://lin.ee/57zX9DW6k) if you would like to do so, so our committees won't deny your application due to false positives for insufficient funds (i.e. you haven't paid the Delivery Fee for the other person)."
- question: "Will I get refunds if I failed to reach the target?"
answer:
- type: "markdown"
text: "**The registration fees are non-refundable and non-negotiable.** However, paid delivery fees can be refunded to you by contacting us through our [LINE Official Account](http://lin.ee/57zX9DW6k)."
but wait! we’re not just able to make it work in the faq section, but also most of our webpages! webpages explaining all of our events are now completely coded in yaml, our (COMPUTERUN) homepage is now also written in yaml; even our online guidebooks, sponsorship proposal, && media partner proposal are entirely written in yaml!
this means that COMPUTERUN 2.0 committees wishing to update the page no longer need to understand a bunch of html; just hack that yaml && markdown source files && done! 🔥🔥🔥
the modernization of the codebase is definitely making it more flexible and quicker to set up for changes; let’s say, when one of your events require an Instagram username; before, we had to modify our registration logic && add a new form to insert your Instagram username, but today we’ll just need to add that additional field directly on our database, and our backend codebase will automatically recognize and start to validate that, too!
interested in COMPUTERUN 2.0?
if you’re interested, just head over to the official website at https://computerun.id, or follow and contact us through many ways!
COMPUTERUN 2.0 is proudly presented not just by us (the folks at https://reinhart1010.id), but also by HIMSISFO (Information Systems Student Association) and HIMTI (Computer Science Student Association), two of the largest official Student Associations in BINUS University! && true, this is our second (or first, ’cause arrays starts at 0, unless you’re R or MATLAB) installation of COMPUTERUN, && this is our first (or 0th) installation to be held internationally!