Tumgik
#I knew python but I did not know HTML so all of this is what ive been teaching myself
cadiacat · 1 year
Link
Folks! I’ve been teaching myself how to code! If you want, visit my website and see what I’ve been up to :)
3 notes · View notes
Text
Idia With Yuu Who Wants To Learn How to Program Games
Not gonna lie this is a very self indulgent piece because my computer programming class is making me want to code but I also want to write 💀 This is my compromise here.
Notes/Warnings: Reader is Yuu, I am in the English server and wish to not know what happens in Book 6 till it comes out so artistic liberties will be taken. Also, Idia might seem a little ooc but when checking the wiki it says he gets excited and talkative when stuff he likes gets brought up so I took it and ran with it. Enjoy!
Masterlist
Tumblr media
Before you came to Twisted Wonderland you already known how to code. Mostly just from camps that your family made you do or just out of general interest. Nonetheless you only knew the minimal to basic things, like HTML, CSS, a little bit of Javascript and Python as well C++. So to say the least there wasn’t that much you could do especially as a beginner. You’ve always seen video games or visual novels and wished you’d be able to do something like that one day but yet, you never got around to polishing skills or making yourself actually do anything to get yourself to that goal.
Jump skip to know that you are in Twisted Wonderland. You didn’t know much about this world at all, lots of things were different than your own world. The way things were done, school expectations, slang, magic. So to say, you just expected that anything you knew would be just thrown out the window one way or another. Once you met Idia though you felt more secure in your knowledge. Idia was someone who you can imagine to be the most normal in your world. He was one of those kids in your class at the back of the room, typically not speaking to anyone unless prompted. Now you may wonder, “How did the Ramshackle prefect become associated with the shut-in hermit?” Well like any other instance, Ortho.
Ortho was extremely persistent that once you expressed interest or made an off-handed comment that you knew some code and loved visual novel games, you should meet his brother. Honestly, the issue wasn’t to convince you, it was Idia that needed convincing.
Since it wasn't Idia who invited you to his dorm, he was flipping out when Ortho told him to expect you. He's heard about the notorious Ramshackle prefect who dealt with Overbolts even though they're magicless. He couldn't lie and say that he wasn't interested in you though. Not everyone was able to do that. He just wasn't sure if he could do this right now.
Once you did arrive, Ortho carried most of the conversation. Idia was trying his best to try to make conversation as well but he couldn't bring himself. It was hard to talk to a normie okay?!
Well, that's what he kept thinking after each of his failed attempts. Ortho knew what to do though, he knew his brother would have issues so he hacked into your Magicam account to learn more about you till he ran upon all the gaming and anime accounts you followed. He put to and to together and this was Ortho's plan to make you two talk normally. Once he mentioned a game he knew both you and Idia played it was the start of something great.
Idia's attitude towards you changed completely once you talked about video games and anything else he was into. Which dragged into how the game was coded and whatnot. Once you mentioned how you wanted to program your own game and your vision he was just like an over-excited child he ushered you over to his game, asking how much you knew about code and how fun it would be to create a game.
But basically, once he dragged you in it'll be very hard to leave. Your whole friendship with Idia from then on was built on the game y'all were creating together, anime and gaming. Not that you'd complain it was very to have Idia around. Just that you'd always have to start up the conversion since Idia will always second guess himself
Even once you two finish creating your game Idia would still keep you around. He'd even start being the one to invite you instead of just showing up! After helping you learn and sharpen your skills in programming by working on a game together, you'd start to help him out too! If you know anything about programming, especially C++ you know how picky it is with its writing. Whilst he's off typing quickly you start to point out to him certain things he's missing, like a semicolon on something that'll screw the whole code up.
Wholeheartedly once you make friends with Idiai from one of his special interests it's going to be hard to pull him away from you <3
128 notes · View notes
snowcoding · 8 months
Note
hi. i had a very similar experince to trying to look through the code camp scams and everything online and not living near anything useful. if you can find an online real college thats what i did, granted its a community college and an associates but. other than that, don't sleep on utilizing chatgpt to teach you. thats how i learn all of my material. you can ask it questions or say "can you teach me about x", and if you dont like its response you can say things like "make that more simple" or "make that interactive". but helpful tip, all programming languages basically do the same things and work in very, very similar ways. if you just learn the fundamentals of programming you can just translate that to any language. in my opinion, the basics to learn are: the structures of programming (sequential, conditional, iterative), variables, datatypes (integer, string, float, etc)(in python those are it), conditional statements(these are those if-else things you see), iterative aka loops(do..while, for x in list, do until, etc), functions(keep em one purpose), passing data. i would say these are the fundamentals. every language does it (besides html bc thats not a programming language but just a mark up language), so once you know about the conditonal structure for example, just find out "how do i use this in x language". if you are learning python now, its a great language to learn about programming and you've probably realized by now that people most often use it in an object oriented way, but you don't have to and don't have to learn about classes or objects if you don't have the fundamentals down yet. i hope this helps and if you have any questions feel free to ask me
Tumblr media
Oh I 100% agree with this advice. After looking for a long, long time, I realised the most legitimate courses were from 'real' colleges and education suppliers that offered 'brick n mortar' schooling as well as e-learning.
I'm definitely going to utilise the free resources online and then work towards building a profile and generally seeing what the jobs online look for and work towards that alongside the usual path of learning :)
Also, I love how supportive folk generally are in this area of learning. I knew it would be competitive, especially when it comes to getting a job in a year or so...but seeing folk lift each other up instead of put each other down is heart-warming on so many levels. It makes me think I've found my correct career path :)
24 notes · View notes
izicodes · 1 year
Text
Anonymous ask came through | My story
Tumblr media
I accidently deleted their ask, so I'll answer it here
Someone messaged anonymously me saying I was privileged to get the apprenticeship and that I shouldn't be sharing tips on my blog about Junior Developer roles since I’m “experienced” (I've only worked for 1 year and 5 months which my apprenticeship lasted for one year).
The anonymous person mentioned they have been studying for 6 months and still haven't found a tech job or the job they wanted. They mentioned that I shouldn't be making posts and share tips because I'm at a privalge position coming from attending an apprenticeship and I don't relate to what they're struggling with - to that I'm sorry it's been hard for you, I wouldn't wish that for anyone studying entirely on their own. please keep trying, don't give up.
But what the anonymous person doesn't know is how hard things were for me and my family for many years to even get me to where I am today.
Tumblr media
I am privileged to be in the UK to be able attend school, privileged to get accepted into an apprenticeship after doing two exams for it but:
I come from a family who were classed as "very low income" by the government for many years and only recently we broke out of that.
I learnt HTML, CSS, JavaScript and Python on my own before the apprenticeship gave lessons on it and by then I already knew the topics.
The apprenticeship didn’t teach me Git or GitHub or how to set up VS Code or Visual Studio - I taught myself online.
I learnt SQL and C# from YouTube because the teacher was so bad at explaining things.
I only passed the two required exams for the apprenticeship after failing 3 times - which I posted about it on my blog.
I taught myself the tech I use today, the apprenticeship did was secure me a job and having a Lead Web Developer to shadow, though he had his own projects he was busy on.
When I realised the apprenticeship wasn’t going to teach me everything I needed to learn for my tech career, I joined and completed a free online night coding bootcamp from the government and studied for 16 weeks whilst having the apprenticeship and work to attend to.
All I do on my blog, my little tiny corner of the internet, is share my progress, tips through tutorials, write posts about a topic I learnt recently and share information I get from attending those career masterclasses that free for people to join in the UK. I want to help people, not to flaunt my success. I’ve failed lots of times and posted about them on here - exams, work projects and even my own personal projects.
I may not be a self-taught with no experience and suddenly got a great tech job that the anonymous messenger wanted me to, but I’m still going to share my experience and tips that might help people out their own their own coding journey (that’s why I end some of my posts with “I hope this helps someone out there”). If you’re looking for someone that is self-taught and got a successful tech job from no previous experience, I don't think I am that person for you to follow, there would be no point following my blog because I got the role through an apprenticeship - the job was not secure though as I had to pass or they would have fired me.
So, I apologise to the anonymous person who messaged me who looked at my blog and was upset with me sharing tips on coding and it seemed like I came from that specific background they wanted me to be. However, I won’t stop sharing posts, beacuse someone out there might appreciate them and if no one does, that’s 100% a-okay! My blog is also a record of my coding journey and I’m not going to stop! :D
All I do is to make my Dad proud. Through things didn't go well for him over the years, I hope that when he sees me, he's proud and felt like after everything, I was worth it.
Tumblr media
My family consisted of a single dad with two daughters since late 2000s UK. Mother left because she didn’t want the responsibility of looking after me and my sister. My father gave up everything to solely look after us - that meant not getting a job. We were in the benefits system for years after years, only in 2021 did we end it completely, so basically two years ago. I didn’t have much growing up and I mean the bare minimum. The only games I had were The Sims 3 base game and games on my Nokia brick.
The benefits money he got, he tried to get me and my sister to a private school just for us to see what it was like, but it only lasted a year before he realised the money was not enough. Dad made me and my sister really study hard to get into an all-girls independent school - a school where you have to take exams to get in. I took those exams and got into the school in 2013. When dad saw the confirmation letter, he cried. All his hard work was paying off. That inspired him to try university out, doing computer science.
It was when I finished secondary school I got my first iPhone in 2018 from Dad as a “well done for completing your GCSEs” gift. However, I didn’t do good enough to do the subjects I wanted to go and do medicine, so I had to switch my course from Biology, Chemistry and Maths to English Language, Combined Science and Economics. I’m grateful for economics, made me understand the government and the world a bit more (and understand what the hell news was talking about most of the time)!
I was failing. Miserably. I was pressured from my school to retake the year, so my dad advised me to quit and join a community college instead. In there they let me to my 3 subjects to do Medicine at university. However, I was failing again, had health issues which lead to me having to quit school early. I never completed my A-Levels. I was stuck for months doing nothing when I decided to get a call centre job. Liked it but last for only 3 months. I was inspired to learn programming again but properly so I can get a job. I realised how hard for self-taught beginner programmers to get a job, and I knew I would be in the mix but my dad was already struggling at home and I needed money fast to help him.
I started looking for apprenticeships even if it doesn’t pay similarliy to a full time job, it’s something to help dad. I was still of age to apply to the ones I kept seeing so I applied to a bunch. No answer. I kept learning Python and JavaScript and applied more. Then one came back saying they wanted an interview. They didn’t tell me the first interview was going to be an exam?! Last an hour and a half and then they talked to me afterwards. Got another interview with them - exam. And the last was talking to one of the partners of the company.
When I told my Dad I got the apprenticeship, he cried again. I knew he felt like I was failing left right and centre and he was a little bit losing hope on me, but for everything he’s done for me and my sister, I couldn’t let him down. And guess what my Dad did when I told him I completed my apprenticeship last month? Yep, he cried.
And I thank the gods and the universe everyday for the opportunity I was given to have done an apprenticeship because I can help my family more as I do have people here and around the world who depend on me and want me to suceed, so I will take every chance and opportunity I can get.
Dad said "If you're entitled to it, grab it. Any opportunty, grab it. You never know when it'll come back to greet you again"
Tumblr media
79 notes · View notes
boyfhee · 4 days
Note
hmm, jay fic?? write it and you shall submit. i will be waiting for it, hehe. even i want to start a writing account for enha but i dont know what to post first T_T i have a text au and a headcanon, tell me which one should i post first :0
hope your bro does well in his 10th ✌🏼 tell him to not waste these next months, but hasnt the difficulty level for 10th graders decreased too?? i hate this education system. for us, 70% of syllabus was removed and people say you guys didn't write the exams 😭
hanuman chalisa haha, even if i have god by my side. i would be scared too. lmao how can a jaw chase her... noo that is so funny 😂 i mean i cant handle the smell of rotten food and what would i or you do with cadaver 🥲 i dont know. i regret everyday that why i havent chosen bipc 😔
i know apathorax from arjun reddy movie 😶 is it what it is?? help i dont even remember. isnt it beside the chest of a human?? the flesh part?? tell me tell me. well i havent been interested into coding but i need to start to learn how to code.
since you said you have coded, tell me the basic coding languages i need to know + how your teachers taught you caelin! i badly want tips to learn. like i have so many reels saved on my ig about coding + tips
same pinch, but i have been stanning them since on era and i think i was a hardcore fan until they dropped butter. i lost interest because same, their music started to change and started concentrating on the west. soo, i used to love the old bts caelin :(
hell no!!! when i used to watch yuzuru hanyu skating videos, i got into figure skating and then random videos used to pop up, even i used to know sunghoon before he debuted 🥲 i didnt watch like all of his performances but watched the best ones in his career ^^ he grew up so well.
yup!!! when fever was dropped, engenes knew it was a banger. damn it everyone on twitter asked whose song was this and engenes were like, huhu its enhypen \(^_^)/ hooray hahga. even i agree with you fever was and is the best bside i have ever heard from them.
this already long so i will continue in the next ask :3
— lover club anon <33
jay fic was posted, i hope it reached you well ^^ also, good luck with starting a writing account omg .. you can start with texts since they are a quick read and attract more audience !!! however, headcanons aren't bad either ... it really is your choice :O
i will tell him to do well in 10th, although he wastes all his time playing valo / forza horizon TT i don't know how easy or difficult the school exams have gotten, i've been so out of the loop ever since i graduated >< hope your sister does well too in boards ^_^
and omg bipc is fun but i'm sure pcm is just as interesting :O you have a fear of blood and needles so maybe you weren't meant for the OT but rather for doing other big things in like ... let's be positive !!! also, i think you mean apothorax ?? it's part of thorax containing heart and lungs ^^ i was studying about mediastinum today .. it's too much to take in. there's so much information and so little space in my brain .. sometimes i wonder if i will be able to remember all the things _ _;
also, i studied coding in highschool so i don't know how helpful my tips will be for college since you're definitely going to learn much much more there :O i think html css is basic and important ( for example, tumblr's who website theme and post format is based on html css ) javascript, python are important too since they're in demand. i'm afraid we didn't learn a lot in school except what was in theory .. didn't have many lab sessions and the most we did was python and html css since that was the main focus ( i hate python like whatever the hell that is ... )
i also started with hanyu !!! and then came across cha junhwan, yuna kim, ilia malinin and all though the international tournaments and all. i remember being so interested in fs, i watched the 4cc tournaments during classes TT i actually came across sunghoon through junhwan, watched his videos and then moved on like .. i didn't see him at the competitions so i thought he quit :O never looked him up for me to know he was a trainee / idol
AND YEAH fever is truly the queen, i can never get tired of it. border : carnival in itself is an amazing album. what's your fav album of them so far? fav b-side and title tracks? i need to know ><
0 notes
cardboardluigi64 · 1 month
Text
So over the course of about a week, I had extracted the game roms from the various Virtual Console games I had bought on the Wii, 3DS, and Wii U over the years when their online stores were still up. (Well actually, my brother had bought Final Fantasy 1, Circle of the Moon, Minish Cap, Phantom Hourglass, A Link to the Past, and Super Metroid, but whatever. We shared the consoles.)
Tumblr media
Now I can do whatever I want with these roms, whether that's using them in an emulator, or putting them on a flashcart or some other rom loader to play them on authentic hardware.
Some of these were easier to get than others. For the Wii U Virtual Console games, I used the Dumpling homebrew application to dump all of the games, and from there, it varied depending on the game. For N64 and DS games, I just had to find the files and rename their extensions. For NES, SNES, and GBA games, I used a program called wiiuvcextractor that converted the proprietary formats they used to more common formats used in emulators (.nes, .sfc, .gba). It was pretty easy to use. And then for the Wii games, I used a program called nfs2iso2nfs to stitch the files together to make an ISO. It was easy enough to use once I knew what I was doing by reading a guide a bit more carefully.
The 3DS Virtual Console games were a bit more complicated to do. I had to go through GodMode9's file explorer to go through the files for each VC game to export the roms. The Game Boy and Game Boy Color games were easy enough to deal with (just had to rename the extensions). The one Game Gear game I had bought, Sonic Triple Trouble, I had to decompress with an application called mdfTools. I don't remember whether or not I just dragged and dropped it or used a command prompt, but it wasn't hard either way. And then there's the one NES game I had on 3DS, The Mysterious Murasame Castle. It was a Famicom Disk System game, and hoo boy, was it quite a doozy. First of all, I had to use a hex editor to copy and paste the actual game data without the filler data to a new file labeled .qd, and then I had to download Python specifically so that I could use a specific Python script so that the .qd file could be converted to a regular ol' .fds file.
It was quite a hassle, and technically, it would probably be the hardest one to do, given that some very basic hex editing shenanigans had to be done, but somehow, I found extracting the roms from the Wii Virtual Console games to be far more infuriating.
After some trial and error trying to extract files from the .wad files I had extracted from my Wii (with mixed results), I had found out about a Python program called vcromclaim, which streamlined the whole process, but I had to provide a NAND dump to use it. So after some more trial and error trying to find a program that could create a proper NAND dump, it took even more fiddling to get it to work because I have a monkey brain, but eventually I was able to get it to work... except I wasn't able to extract the one Neo Geo game I had, The King of Fighters '98, because it used a specific kind of compression. According to the readme on github, I would've needed some Python thing called PyCryptodome installed. I don't know what it did, but if I wanted to get every Virtual Console game I owned, I would need to install it. This took several attempts, but I had to reinstall Python outright because it turns out I didn't install it right the first time, but eventually, I got it to download, and got King of Fighters '98 properly extracted, too. And as an added bonus, I got all of their respective digital manuals as html files, so that's pretty neat.
Tumblr media Tumblr media Tumblr media Tumblr media
So I know what you might be wondering after reading all of this, because I've come across the same comment trying to look up guides and tools for this whole process.
"Why go through all of this hassle just for a couple of game roms? Wouldn't it just be easier and faster to just go to [INSERT ROM HOSTING SITE HERE] and download the same games?"
To which I say:
Tumblr media
Anybody can go onto the internet and download game roms. I should know. I've done it plenty of times myself. But it was never about the games. It was about wondering if it was possible and seeing if I could do it myself. Life's a journey, not a destination.
1 note · View note
swathi20 · 11 months
Text
HAPPY CODING!
So the coding bug bit me when I was in 11th grade. I even remember the first handbook that I bought myself, I would literally read every book on programming I could get my hands on. I would search up for articles online and subscribe myself to a dozen of newsletters only to enhance my knowledge.
Tumblr media
With every passing day, my interest would only grow deeper. I could feel a completely engrossed plus intrigued self of mine grow fonder and fonder of typing lines of code on the IDE, completely devoted to and immersed in the editing, compiling and debugging cycle (a.k.a the 3 phases in the development of a program). For some a part of course while for some a learning pathway, I definitely knew what it meant to me. For me, it was not only an activity fun by nature but also definitely something that would everytime take me to a creative space, my happy place:) to be more descriptive, a place that would inspire me with new ideas and empower further creativity.
The first programming language that I made myself familiarize with was C++ where I started with very basic programs and soon shifted towards a more advanced level. I loved it how the very concept of programming would challenge me everyday as I would write pieces of code and rectify errors everytime I would compile a program, boy it surely did teach me patience and the need to be accurate. After learning C, I opted to go forth with teaching myself SQL and DBMS concepts. It surely was a damn absorbing and captivating experience.
Tumblr media
C and C++ were indeed riveting, but what piqued my true interest was learning to code in python. Python has its own advantages that encouraged me to delve further into "The World of Python". I surely understood why python ranks among the most popular and fastest-growing languages in the world and why it is preferred by most of the programmers. With its extensive support libraries, versatility and high efficiency that it provides, it surely stands out among the various other programming languages. Being dynamic in nature, it is free and open source and supports high level programming, the biggest advantage however being that it follows a simple syntax that is very much similar to the English language.
Tumblr media
So I began to code in python and it was one amazing experience. Next, I taught myself the nuances of Django, coding on VS Code Editor and finally I actually built my own website. It was a unique and liberating feeling, something that you sense when you try out something different in life, when you cognize you are no longer pigeonholed!
I would implement my front-end skills that I possessed (HTML, CSS, JavaScript with a bit of bootstrap added to it) and build websites the way I wanted, create content and try to make them as interactive as I could. It was sheer bliss. Taking online help, I subsequently went on to teach myself a bit of git and bingo! There it was, a collection of my work on my very own GitHub site. I began to work on further projects, ace my full-stack skills as one might call it.
The next thing I know, I familiarized myself with Php, ASP, the dot net framework and C#. The more I practised, the more I would find myself get a step closer to finesse. Then I discovered myself getting inclined more and more towards machine learning. Every topic under it would generate more curiosity inside me as I would feel the urge and hunger to learn more and find my mind twice inquisitive as it was before.
Tumblr media
All said and done, there surely is nothing as cool and fun as coding and I surely encourage readers to go ahead and give it a try. It surely helped me realize where my passion lies and improvise on it.😉
0 notes
undeadorion · 2 years
Text
Sometimes thing happen both quickly and slowly at the same time, dumping you out the other end feeling dazed and confused. 
In the grand scheme, this is something that started back in high school. In the 90s. HTML was still new. Netscape Navigator was the pinnacle of what the internet could do. And I wanted to make webpages. I taught myself HTML an hour at a time on library computers and in the computer labs at school. CSS hadn’t really been adopted yet. 
I ran circles around my high school HTML teacher, because he was accustomed to teaching hardware and not coding. He was learning along with the rest of us. 
But given the era, web design wasn’t seen as a real job and normal programming was said to be difficult. With no access to it, I foolishly listened to the people who said programming was all math and science and super boring, and kinda let it go. I still did some HTML here and there, learned CSS pretty okay, picked up a bit of PHP, but mostly didn’t expand much.
Fast forward 20 years. I’ve dropped out of college 4 times, having attempted 4 different majors (general art, theater design, architecture, graphic design) and find myself unemployed. With a hyperfixation on a few projects, I get it in my head to give college one last try. Just so I can learn PHP and databases to make a project happen. But the degree included Python. An actual programming language. I dreaded it, having recalling all the insistence that it was boring math stuff. 
After the first week or 2, I found out I loved it. I had to stop myself from rushing too far ahead and almost immediately the teacher knew me well. Mostly as “Does anyone besides Colin have the answer?” When the class was over, I wanted more. 
I finished that class about 6 months ago. I’ve finished another term after that, and I’m nearly done with the 2nd. A lot of that eagerness has faded. Not for lack of wanting more, but out of sheer disappointment. I’d thought the degree would give me all I needed to get a job. But it’s really just a loose collection of introductory classes that add up to not a whole lot. 
A week or so ago, I started rooting around for what else I needed to learn. Looking at the things jobs required. Looking into videos on what it takes. I ended up with a big pile of stuff I needed to do, but with no clear way of getting into it properly. 
Yesterday, I asked the teacher of that Python class for advice on where to learn more. I half expected him to suggest going to one of the universities in the area. But instead, he linked me just to the computer science section of EdX. 
Free online classes, full classes. Mainly from Harvard. With an option to pay to actually get grades and proof of completing it. They even offered financial assistance. In a whim I gathered up a few classes that looked good and put in for financial aid. I expected to get rejected, cause who’s gonna listen to a sob story about being flat broke at almost 40 and “I promise I won’t drop out this time.” 
They responded in less than 24 hours. I got access to 3 Ivy League classes (yes, I know it’s not the same as actually attending the school) for under $50 out of pocket. 
And that’s how 2 nights in a row I was devouring completely voluntary lectures on coding at 2am. 
If you’re really passionate about something, don’t let it go because of what people who aren’t interested in it say. They don’t know what they’re talking about. 
It doesn’t hurt that in this case, it’s reasonable I could end up with a really good salary at the end. But that’s more of a cherry on top. I’ve worked this hard for 2 decades on stuff that left me broke, so my brain isn’t exactly money motivated.
9 notes · View notes
queenlua · 3 years
Note
hey, i started following you recently and ur bio says ur a hacker? any tips on where to start? hacking seems like a v cool/fun way to learn more abt coding and cybersecurity/infrastructure and i'd like to explore it but there's so much on the internet and like, i'm not trying to get into anything illegal. thanks!
huh, an interesting question, ty!
i can give more tailored advice if you hit me up on chat with more specifics on your background/interests.
given what you've written here, though, i'll just assume you don't have any immediate professional aspirations (e.g. you just want to learn some things, and you aren't necessarily trying to get A Cyber Security Job TM within the next three months or w/e), and that you don't know much about any specific programming/computering domain yet.
(stuff under cut because long)
first i'd probably just try to pick some interesting problem that you think you can solve with tech. this doesn't need to be a "hacking" project at first; i was just messing around with computers for ages before i did anything involving security/exploitation.
if you don't already know how to program, you should ideally pick a problem you can solve via programming. for instance: i learned a lot back in the 2000s, when play-by-post forum RPGs were in vogue.  see, i'd already been messing around, building my own personal sites, first just with HTML & CSS, and later on with Javascript and PHP.   and i knew the forum software everyone used (InvisionPowerBoard) was written in PHP.  so when one of the admins at my RPG complained that they'd like the ability to set multiple profile pictures, i was like, "hey i'm good at programming, want me to create a mod to do that," and then i just... did. so then they asked me to program more features, and i got all the sexy nerd cred for being Forum Mod Queen, and it was a good time, i learned a lot.
(i also got to be the person who was frantically IMed at 2am because wtf the forum is down and there's an inscrutable error, what do??? basically sysadmining! also, much less sexy! still, i learned a lot!)
the key thing is that it's gotta be a problem that's interesting to you: as much as i love making dorky sites in PHP, half the fun was seeing other people using my stuff, and i think the era of forum-based RPGs has passed. but maybe you can apply some programming talents to something that you are interested in—maybe you want to make a silly Chrome extension to make people laugh, a la Cloud to Butt, or maybe you'd like to make a program that converts pixel art into cross-stitching patterns, maybe you want to just make a cool adventure game on those annoying graphing calculators they make you use in class, or make a script for some online game you play, or make something silly with Arduino (i once made a trash can that rolled toward me when i clapped my hands; it was fun, and way easier than you'd think!), whatever.
i know a lot of hacker-types who got their start doing ROM hacking for video games—replacing the character art or animations or whatever in old NES games. that's probably more relevant than the PHP websites, at least, and is probably a solid place to get started; in my experience those communities tend to be reasonably friendly to questions. pick a small thing you want to do & ask how to do it.
also, a somewhat unconventional path, but—once i knew how to program a bit of Python, i started doing goofy junk, like, "hey can i implemented NamedTuple from scratch,” which tends to lead to Python metaprogramming, which leads to surprising shit like "oh, stack frames are literally just Python objects and you can manually edit them in the interpreter to do deliberately horrendous/silly things, my god this language allows too much reflection and i'm having too much fun"... since Python is a lot of folks' first language these days, i thought i'd point that out, since i think this is a pretty accessible start to thinking about How Programs Actually Work under the hood. allison kaptur has some specific recommendations on how to poke around, if you wanna go that route.
it's reasonably likely you'll end up doing something "hackery" in the natural course of just working on stuff. for instance, while i was working on the IPB forum software mods, i became distressed to learn that everyone was using an INSECURE version of the software! no one was patching their shit!! i yelled at the admins about it, and they were like "well we haven't been hacked yet so it's not a problem," so i uh, decided to demonstrate a proof of concept? i downloaded some sketchy perl script, kicked it until it worked, logged in as the admins, and shitposted a bit before i logged out, y'know, to prove my point.
(they responded by banning me for two weeks, and did not patch their software. which, y'know, rip to them; they got hacked by an unrelated Turkish group two months later, and those dudes just straight-up deleted the whole website. i was a merciful god by comparison!)
anyway, even though downloading a perl script and just pointing it at a website isn't really "hacking" (it's the literal definition of script kiddie, heh)—the point is i was just experimenting a lot and trying a lot of stuff, which meant i was getting comfortable with thinking of software as not just some immutable relic, but something you can touch and prod in unexpected ways.
this dovetails into the next thing, which is like, just learn a lot of stuff. a boring conventional computer science degree will teach you a lot (provided you take it seriously and actually try to learn shit); alternatively, just taking the same classes as a boring conventional computer science degree, via edX or whatever free online thingy, will also teach you a lot. ("contributing to open source" also teaches you a lot but... hngh... is a whole can of worms; send a follow-up ask if you want that rant.)
here's where i should note that "hacking" is an impossibly broad category: the kind of person who knows how to fuck with website authentication tokens is very different than someone who writes a fuzzer, who is often quite different than someone who looks at the bug a fuzzer produces and actually writes a program that can exploit that bug... so what you focus on depends on what you're interested in. i imagine classes with names like "compilers," "operating systems," and "networking" will teach you a lot. but, like, idk, all knowledge is god-breathed and good for teaching. hell, i hear some universities these days have actual computer security classes? that's probably a good thing to look at, just to get a sense of what's out there, if you already know how to program.
also be comfortable with not knowing everything, but also, learn as you go. the bulk of my security knowledge came when i got kinda airdropped into a work team that basically hired me entirely on "potential" (lmao), and uh, prior to joining i only had the faintest idea what a hypervisor was? or the whole protection ring concept? or ioctls or sandboxing or threat models or, fuck, anything? i mostly just pestered people with like 800 questions and slowly built up a knowledge base, and remember being surprised & delighted when i went to a security conference a year later and could follow most of the talks, and when i wound up at a bar with a guy on the xbox security team and we compared our security models a bunch, and so on.  there wasn't a magic moment when i "got it", i was just like, "okay huh this dude says he found a ring-0 exploit... what does that mean... okay i think i got that... why is that a big deal though... better ask somebody.." (also: reading an occasional dead tree book is a good idea. i owe my firstborn to Robert Love's Linux Kernel Development, as outdated as it is, and also O'Reilly's kookaburra book gave me a great overview of web programming back in the day, etc.  you can learn a lot by just clicking around random blogs, but you’ll often end up with a lot of random little facts and no good mental scaffolding for holding it together; often, a decent book will give you that scaffolding.)
(also, it's pretty useful if you can find a knowledgable someone to pepper with random questions as you go. finding someone who will actively mentor you is tricky, but most working computery folks are happy to tell you things like "what you're doing is actually impossible, here's why," or "here's a tutorial someone told me was good for learning how to write a linux kernel module," or "here's my vague understanding of this concept you know nothing about," or "here's how you automate something to click on a link on a webpage," which tends to be handier than just google on its own.)
if you're reading this and you're like "ok cool but where's the part where i'm handed a computer and i gotta break in while going all hacker typer”—that's not the bulk of the work, alas! like, for sure, we do have fun pranking each other by trying dumb ways of stealing each other's passwords or whatever (once i stuck a keylogger in a dude's keyboard, fun times). but a lot of my security jobs have involved stuff like, "stare at this disassembly a long fuckin' time to figure out how the program pointer got all fucked up," or, "write a fuzzer that feeds a lot of randomized input to some C++ program, watch the program crash because C++ is a horrible language for writing software, go fix all the bugs," or "think Really Hard TM about all the settings and doohickeys this OS/GPU/whatever has, think about all the awful things someone could do with it, threat model and sandbox accordingly." occasionally i have done cool proof-of-concept hacks but honestly writing exploits can kinda be tedious, lol, so like, i'm only doing that if it's the only way i can get people to believe that Yes This Is Actually A Problem, Fix Your Code
"lua that's cool and all but i wanted, like, actual links and recommendations and stuff" okay, fair. here's some ideas:
microcorruption: very fun embedded security CTF; teaches you everything you need to know as you're doing it.
cryptopals crypto challenges: very fun little programming exercises that teach you a lot of fundamental cryptography concepts as you're going along! you can do these even as a bit of a n00b; i did them in Python for the lulz
the binary bomb lab is hilariously copied by, like, so many CS programs, lol, but for good reason. it's accessible and fun and is the first time most people get to feel like a real hacker! (requires you know a bit of C beforehand)
ctftime is a good way to see when new CTFs ("capture the flag"s; security-focused competitions) are coming up. or, sometimes CTFs post their source code, so you can continue trying them after the CTF is over. i liked Stripe's CTFs when they were going, because they focused on "web stuff", and "web stuff" was all i really knew at the time. if you're more interested in staring at disassembly, there's CTFs focused on that sort of thing too.
azeria has good ARM assembly & exploitation tutorials
also, like, lots of good talks out there; just watching defcon/cansecwest/etc talks until something piques your interest is very fun. i'd die on a battlefield for any of Christopher Domas's talks, but he assumes a lot of specific x86/OS knowledge, lol, so maybe don’t start with that. oh, Julia Evans's blog is honestly probably pretty good for just learning a lot of stuff and really beginner-friendly?
oh and wrt legality... idk, i haven't addressed it here since it hasn't come up in my own work much, tbh. if you're just getting started you're kind of unlikely to Break The Law without, y'know, realizing maybe you're doing something a bit gray-area? and you can cross that bridge when you come to it? Real Hacking TM is way more of a pain-in-the-ass than doing CTFs and such, and you'll learn way more with the latter, so who cares lol just do the fun thing
20 notes · View notes
livvyffxiv · 5 years
Text
My Story of being hurt mentally and emotionally
So before I begin. I will take the time to apologize if this is in the wrong section. I would also like to bring up now that this story doesn't exactly have a happy ending as of right now. I also want to address for people who might be sensitive to this topic, it's about a break up, and gender identity. The reason why I'm posting this in the FFXIV section is because these feelings are kinda bottled up for me, and it revolves around final fantasy. I feel like getting my thoughts into words and sharing this story instead of holding it to myself might... idk... find better self help for myself? Either way I can totally understand if this gets deleted, but this was my warning before I dive deep into this long story. I also will not be giving out names of my characters, or the person involved in this story to maintain both of our safety.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
My name is Olivia. I really don't like talking about this and I know I'm essentially "outing" myself here which I absolutely hate to do but it's totally appropriate to this story to give you the full jist of things. I can't possibly leave this out without any understanding the pain I've been through. So to get back to the point quickly, as I was saying, I'm Olivia, and I'm a transgender (MtF) person. I've been playing this game, Final Fantasy XIV, and I'm not new to the online dating scene. I've dated before online through games and other platforms. Usually ending terribly, but none the less I've done it.
I met this guy on Final Fantasy who randomly joined our FC. He was charming and nice, and we started talking. We spent most of the day together for a course of 3 weeks. Eventually later he brought me to a cute spot in the game (https://i.gyazo.com/416994d14694443a1d251820798ca395.jpg) where he confessed his feelings to me. I told him that I can't do anything until I address the fact that I was transgender. Obviously, it's wrong to go into ANY sort of relationship without telling someone the truth. So that's what I did.
He told me he didn't care and that he loved me for who I was, which I have to admit I started crying immediately because I've been ridiculed and harassed before and in-person about my gender, and even to this day I still get harassed in public for the way I look, or if I get "found out". We did everything together. We even got married in-game (https://i.gyazo.com/8b3163e7ab6fed1ec0069f272bac97b9.jpg). My FC came together and contributed gil to buy a house together. I was the "lease holder" so to speak, so even though he put everything in the house and decorated, I technically "owned" the house. Not that it mattered. We did everything together. We would always try to help each other out in-game and outside. I gave him help based on anything he wanted to know, like how to re-build your credit score from down low. Or how to program in Python or teach him an actual college course in HTML for free to get you started learning decent web design and fundamentals of setting up a website. He also helped me boost my self-confidence by helping me learn how to tank (in-game) and trying to keep me on voice chat longer and longer until I was comfortable talking to him, and in turn be comfortable talking to people in public the way my voice should reflect my gender.
Three months down the line, I was going through a crisis because my vehicle was failing emissions test (check engine is on, and inspection is due which means if it fails, no registration for the vehicle, meaning you can't drive it without going to jail). I get a message from him saying hey I need to talk to you for a second. I told him I couldn't because I was panicking and trying to fix things with my vehicle, so I don't lose registration, but If he wants to talk I can either read it or talk over voice right now. He said no, and then waited until later and changed his mind and then proceeded to leave me a text message of him breaking up with me after 3 months because he couldn't get over the fact that I was transgender. For 3 months he knew full well, and we talked daily over voice for DAYS. He never once mentioned it, or brought it up, just did it right there on the spot. He said "even though you are a female, I can't get over the fact that your DNA make-up will always be a guy, and I know I personally can't deal with it like I said I would. I just felt like I was doing you a favor by trying at least."
This ruined me personally. I'm already dealing with the discomfort of my own body, the feeling that I'll never fit in, and that I'll be judged every time I walk out the door. The only one giving me the confidence was the one person now saying they are breaking me up for the exact reasons why I'm scared of living my life out right now. Coming from the one person who I thought cared the most, and the one I put most of my faith I ever could possibly put in someone. I ended up self-destructing. I refused to leave my room. I spent nights crying myself to sleep. Refusing to eat. It was almost a solid week of me starving myself before I ate anything. Then I started acting out harmful situations by getting in my vehicle and driving as fast as I possibly could on a narrow road covered in forest in hopes I'd lose control and just end everything.
I decided that I needed help, and I needed to snap out of it. So, I talked to my therapist and got an emergency appointment set up. My therapist immediately wanted me committed to a mental hospital. "Olivia the only reason why I can't FORCE you into a mental hospital right now is because you told me if I asked you to go home, you would, and that you don't have medicine in your house that you can overdose on. That's the ONLY thing stopping me from having you put in a psychiatric hospital." I was told that before work, If I don't come in the VERY next day to talk to her, that she was going to then force someone into the office and have me evaluated immediately on the spot. So, I obliged. However, I was still feeling suicidal and planned on going through with it. The only thing that stopped me was my brother, who I haven’t seen for years come pull me aside from the house and take me on a night to get dunkin donuts coffee and sit in his car and talk things out and catch up, and explain everything of how I've been feeling, and things he's been through. Stuff that really brought me closer to my brother than I thought I'd ever be before.
The story however doesn't end here. There is no exact happy ending here, because this is where I ****ed up.
A few months after getting over him, I managed to bump into him again. I did something and joined the same FC he did because I didn't feel like I belonged in the one I was currently in, and yeah, I did want to get closer because I missed him, and, I wanted the opportunity to make new friends. He started talking to me and we became "friends".
I'm going to jump forward a few more months because the stuff in between is irrelevant because nothing serious happened. I was smart enough to keep my distance, even though I did have set backs and did occasionally fight with him, but nothing STUPIDLY terrible, besides the fact of trusting him in the first place.
He later apologized for everything and came to me one night and said I want to try again. "I feel like you are the only one who really understands me and the one I mostly bonded with". Later on, then was said "In 3 months I'm going to buy a plane ticket, so we can visit each other, but right here right now I'm going to put my foot down, and stay away as long as it takes just to say Olivia [Redacted Marriage name], please come back home..." I said no. Not until he proved to me that he has totally changed and is willing to accept that he would be okay with dating me and can let go of my "DNA make-up". He promised his hardest.
Of course, I fell for it. I jumped right in. I left all the things that said he was an a****** and to not trust him, go. I was too quickly willing to take him entirely back. Just waiting for him to show me he cared. Later his "promise" turned into "I know you said no initially, and you have your reasons for wanting to take your time with this, but Valentine's days is right around the corner, and we are both technically single. Does it mean I'm going to try? Absolutely but I'm not tied down to this because it wasn't a commitment but a chase to the goal line". This was a ploy to really say I'll work things out with you but if something comes up in-between, I'm going with that.
On valentine's day. He messages me and says "Hey happy valentine's day! Do want to go to my wedding with this girl I've been talking to? I'm on the fence about dating her, I only want her as a friend, but actually we might take this seriously". The entire time he's been making promises with me to work things out and fix things, he was talking to some other girl. I broke down on my way home that I refused to go home and stayed at a beach and cried in my car for an hour or two before I decided to come home and then tell him how I felt about how destroyed I felt when he promised all these things to me. He thought I was personally attacking him and didn't respond to any of the key things of how I felt.
For days he hasn't responded until I just told him outright that I'm done. I'm leaving the FC, probably the game to because he killed whatever feelings I had left for him, and the game that I enjoyed, and that it was a mistake to trust him again. It was very clear he only cared about himself.
The so-called girl he was on the fence with, he still married to her regardless, and she even has his last name in-game. The so-called girl that he said he wanted her just as a friend but was on the fence about dating.
The lesson to be learned here, as much as I can't even take my own advice, is that you should love yourself for who you are, because only you can make yourself truly happy, and when you find happiness yourself, put your love into someone who respects you for who you are. Do not allow yourself to settle for anything less, and once you are out, don't think twice about going back.
1 note · View note
giannisbct-blog · 6 years
Text
I “LIKE” programming
Well just like this blog, when it came to the like system, I wasn’t entirely sure where to start. I had started working on this before we had decided to go with AR built in Unity so I figured I would get the mechanics working and then be able to transfer them into Unity. Initially when we were thinking of building a physical model or projection mapping, I was going to have the like button on a webpage so that anyone could access it, an inherently thats where I started. I had the thought of using a python script to build the whole back end mechanic of the system and that data would be passed from the user via the webpage, and after quickly running this by Liam (who has done something similar before) he agreed that it would be the easiest way and we could have multiple users at once which is what we wanted. I built the most basic version of the “front end” part so that someone could input their name and then like it so the likes would be attributed to them, just like it is on social media.
Tumblr media
Liam recommended using the flask module for Python to host the server (and webpage for testing). Once I had installed that I managed to get a connection between the two and even by complete fluke was getting it to receive data from multiple devices and be able to register that it was from different devices. I personally was stoked about this because it was 90% of the like system working but then Liam pointed out, as we don’t know why it worked, if it stopped working we also wouldn’t be able to pick out why. I figured it was in my best interests to learn the best practice for this rather than get the minimum working version as it would be great reference material for the future. In these early stages, Liam helped me a lot by explaining why one way was better than another and generally guiding me through which was super helpful as I was almost coming from no coding background. The main think I am super grateful for is him introducing me to JSON, which I’ll be honest was an absolute pain at first but I now realise it was definitely the best way to go as it was far more reliable and actually made sense. So essentially what was happening is that the HTML page was passing the name that was submitted by the user, to the python script every time the like button was clicked. The script would then add a new value to its own defined variable “like” and count them like that. The bonus of doing it like this is that if someone played once and then after a while came back too have another go, their “score” would compound and keep increasing. On that note though the downside is that if two users input the same name they will have a super score rather than two separate scores. While this would be a downside for an actual game where the score would need to be counted from just one game at a time and not an overall total, for our project it sort of just adds to it. The idea is that the more people “like” the disaster that happens, the more it proves our point that social media is building a screen which separates people from reality and that they can simply click a button to show their support, and the more they do that, the more they are helping? Or at least thats the theory.
Tumblr media
In the past when it has come to doing small code projects I have looked up how to do something, found code that suited my need, copied it and then tweaked it to properly fit my programme. However, this doesn’t mean I necessarily understood it which is something I wanted to do differently this time. As this was basically my main role in the team, I wanted to make sure I would be able to explain to other people how it worked rather than have a piece that worked but just because it did. Which I guess relates to this whole degree itself, nothing is really taught to us (especially in studio) and its all self directed so we need to learn the skills ourselves and in this day in age when you don’t need a computer science degree to become a developer but simply be able to copy code from different places to suit your programme, I believe it is quite important to know what you are doing because I the future it will make me far more efficient. And its the learning by doing thing that works really well for me that I like. For example when it came to having to deal with GET requests from both the server and user side, I had done something similar before with the instagram location finder programme that I had had a play with earlier in the semester, and because I had used it before I sort of knew how it worked but then I had the code itself I could look through again and figure out why it worked and what parts I could omit for this different programme. I have to say, I think this semester I have learned more about programming from simply trial and error, Liam and online tutorials than I did in all of last year where I did both programming papers. It was also great to learn this in a group setting where the other team members also are not super coding savvy as trying to explain what I was doing or why I couldn’t do something that we wanted to do due to the nature of the system that I was writing in non technical terms helped clarify what I was doing for myself. I would certainly like to keep doing more programming projects in the future to further develop my skills and learn new things.
Transferring the user side to Unity was a whole different box of frogs though. First of all Unity is all scripted in C# which I have never used before (but luckily is similar to java which I had dabbled in with processing last year) but the whole mechanic of connecting to a server is made a lot more difficult as all requests need to be sent through a Coroutine. Which I’ll be honest, I had never heard of until I stumbled across a million Stack Overflow forums that explained that that is what you have to use. I think I have got my head around them mostly but there are still some things about them that elude me, for example everywhere (including the Unity manual) it says that they end when they hit a “return”, but I have coroutines that have functions or call new functions still enclosed in the coroutine but after the return type and it still calls them (see below).
Tumblr media
They also supposedly run for their specified length (of time) regardless where they are called, i.e will run for 6 seconds if told to after being called from the Update( ) function. However, I have found that in some of my code this works, in other parts it just sort of ignores that rule and sometimes it waits for a wee while longer than the instructed time. So its not totally something that I fully understand but I know it enough to be able to use it in the right places and the majority of the function of the Unity scene is run by coroutines so I am clearly doing something right. I like to think of it as a poorly trained animal, I know the commands and the animal knows what they mean but sometimes chooses to do its own thing.
Another major challenge I had was dealing with JSON, for starters sending the exact same data as I was from the webpage but through unity, it was as if it was parson the data into JSON and then parsing the JSON into more JSON even though the commands where almost the same, so on the python side I had to update it so that it decoded the incoming JSON properly so it was then actually processed logically. This brought in a whole world of problems in itself as then the data that was being sent back to the user was all jumbled and messed up which was less than ideal as it felt I had actually gone backwards rather than made progress. But as I have learned from this project, every new error you get means that you are making progress as you have made it past the previous error. After all of that though, I did get it working.
vimeo
Once I had done all of that, I realised that it was a perfectly functioning Like system that recorded multiple user’s scores and could compound them and it was perfect, but only once. There was no way to restart it without stopping the whole application and going again. So there was the next challenge which proved a lot more difficult that initially suspected mainly due to how referencing different Game Objects is from a script and even harder, referencing the scripts of those Game Objects which is what caused me many hours of strife. To make matters more difficult as well, Unity doesn’t appreciate all the things you could normally do in a C# script so you have to find ways around its very stubborn walls which in my case lead to many, many scripts. Doesn’t sound like such a terrible thing but to make sure each was working correctly I was logging things to the debug console from almost every script so then when I wanted to look for a specific message I was sending to try and get something working, it became a whole lot harder because there were 20+ scripts that were all printing to the console. But once again, I am a champion and figured it out.
vimeo
As I write this I realise that it doesn’t sound that difficult and didn’t take that long but the code for the like system has been haunting me at night and has been an ongoing saga for weeks . I certainly have learned heaps and am happy with my process that I undertook. However, if I was to do it again knowing what I know now, I would skip out the HTML part and just go straight for the C# scrips because I think that transition was the hardest part of this whole process. In HTML (with javascript) it is easy to do everything all in on document but with C#, you can’t send data and also receive it in the same script, you need to separate them into multiple scripts which is where confusion starts manifesting as you try and think across multiple scripts and have to remember what each one is referencing and how it will then affect the other one. The issue with backend systems as well is you don’t overtly see your mistake as you would with front end because either something happens or it doesn’t and if it doesn’t you then have to comb through your code to find the broken section and find out what is messing you up. Overall I think this is what I found the most frustrating as I have only really done mainly front end development rather than back end, but this project was certainly a great insight into it. Now as for this whole project once we got on a roll, I obviously stopped blogging as I got so engrossed in the work which I do understand is not the best practice but as we were pushed for time (having left it so late to start doing something) I focused solely on getting the work done and from an outsider’s perspective the final product doesn’t really show how much work went into the programming of it, so I have uploaded all my scripts to GitHub so you can have a look at them, and also see how things work if you are interested: https://github.com/JabronusMaximus/ARcde-Scripts
1 note · View note
Text
GSoC logs (June 28–July 4)
June 30
Preview component.
The onlyoffice way of file handling is obsolete. Also isfileeditor property.
Running wopi. (stopped jupyter) I can change the api ports, right?
Wopi not working.
wopi.js:1 opening file with WOPI failed Error: Request failed with status code 400 at ar (wopi.js:1) at wopi.js:1 at XMLHttpRequest.i.onreadystatechange (wopi.js:1) Response : could not stat file
Wopi server has issues while shutting down server (idk if it’s an issue or intended. Ungraceful shutdown)
clean and built ocis and proxy.
July 1
Back to drawio.
Wait what are those 404 errors?
Eg.
GET https://localhost:9200/remote.php/dav/files/marie/sample.docx?a=1&c=eaecda5a4933a474d9a25479ae485050&preview=1&scalingup=0&x=1920&y=1920 404 (Not Found)
Okay, ocis-jupyter stopped working for a while… but was fixed when I did make generate. What is owncloud sdk? Reva? Webdav? How files are handled by owncloud?
What are mixins? Dollar sign vars.. Where all can we use it? $_fileActions_editorActions
Okay, global variables. Where all can we use these variables? What's the scope? Like anywhere in pheonix? How do I know?
Read more about global variables.
I have a simple preview component.
I’m able to load up file content the drawio way with owncloud sdk. Not sure how many other ways are there. yet.
I realised I made a mistake in the project proposal. I added a python code snippet that was half js, half python syntax and the sheer embarrassment left me in another hellhole of anxiety. Hope nobody noticed it.
Try to generate html for a sample notebook and prototype the preview component.
nbconvert failing. Same thing was working back then.
Okay, I was trying to convert a sample colab notebook.
Jupyter and colab notebooks have different json formats. Nbconvert won’t work on colab notebooks. Unless we do something. :) Okay, should I also add support for colab notebook previews later? Looks like an easy task, since only a few changes in the json format.
Also null values aren’t accepted in python. Since execution count can be , we could parse the string and change all execution counts to 1. Let’s handle that case later.
No need for that.!.. We can load json directly from a raw string (-_-) (I knew that). So just pass the string along to python and do any case handling on python side (easier, many cases are explained in nbconvert docs). Return back the html string.
Now moving on to the api.
July 2
I need to create the grpc api that receives a raw string and returns html string. That sounds like a bad practice. But to keep it simple for now. Let’s focus on feature completion (keeping it simple and stupid) and then move on to evolving the api with best practices and such.
So this is what I know so far. There’s a service implementing an api.
Looking into the service
It uses ocis-pkg for almost everything.
Ocis-pkg is a shared library. Built on top of go-micro. Uses go-micro? Wait..
Aa right. So ocis-pkg has a bunch of general functionalities implemented that can be used by all the services of ocis.
So the extension uses ocis-pkg to implement the grpc, http methods and such.
Compare with other services in ocis.
-_- Some youtubers say ..
How to embed html in html. What?
Aaa.. iframes. Nop. v-html. Vue is awesome. I'm never going back to react unless I'm forced to.
Mayday! Mayday!
Make generate isn't working.
All make commands are failing.
Shit I was supposed to submit a demo today by 4pm. And it just stopped building. Okay. Cool.
I shouldn't have touched it until I saved some screenshots or anything.
July 4
It’s 3:52pm already. Shit. How did I waste this much time?
Okay, can’t respond to vernacular. Nice.
See if ocis-jupyter.js is generated. Yep, but go code can’t be generated unless make generate runs.
Sent email.
Fix-make
Fixing build.
Actually change gopath
Read about makefiles
Look what’s happening in makefile from line 160.
Fixing build
Okay, I tried manually installing - go get -u github.com/golang/protobuf/protoc-gen-go
And it was already installed. And upgraded to the 1.5.2 of protobuf version as in go.mod file.
anaswaratrajan@Tua:~/cern/extensions/ocis-jupyter$ echo $PATH /home/anaswaratrajan/.nvm/versions/node/v15.13.0/bin:/home/anaswaratrajan/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/go/bin:/usr/local/go:/home/anaswaratrajan/go:/home/anaswaratrajan/go/bin
Read more into protoc, protoc-gen-go and the rest of the protobuf compilers.
Everything's structured how it's supposed to be.
The makefile seems to be doing the right things.
How do I debug a makefile?
Should I write path declarations in the makefile? Okay, let's not touch it until current issues are fixed.
0 notes
blogging-from-itp · 4 years
Text
Working with Pi - 2
Connecting to Firebase
This week I spent time figuring out how to capture images using the Pi cam and sending data to Firebase.
Pi cam
There are four parts to it. 
Capturing a picture: ✔️ This is the article where I started but it work, based on Alex’s suggestion. My issue was working with installing Imagemagick. May be it’s lack of experience, but based on Google search, I couldn’t find a simple workaround to use it. So I broke down the steps and started doing each step individually. Pi’s timelapse documentation came in handy.
Setting up a Cron job: ✔️ Tom Igoe’s page was super helpful.
Saving them in a folder: I think it’s about definig the path. But I couldn’t figure out a way to do the Cron job by storing the images in a folder. So my Home quickly got crowded with images. All of which I had to manually delete.
Sending it to Firebase: Read below.
Useful references:
This has good documentation on how to take photos: https://picamera.readthedocs.io/en/release-1.13/recipes1.html#capturing-to-a-network-stream
Sending data to Firebase
Before using Firebase, I was inclined to use MongoDB. Based on research, it turned out to be a slightly harder to send images. It’s easier to send text files. So I switched to Firebase.
One of the challenges working with Pi and hardware in general is that there are different ways to do the same thing. So a big chunk of my time was consumed in reading and looking for good documentation with clear explanation.
⇩ This one didn’t work:
Tumblr media
Setting up Firebase: This was the easy part. I followed the steps from this article and created a project.
Since I didn’t know how to send images to Firebase, I tried to work with a sensor. I picked the DHT sensor. Little did I know how fragile and finicky it is.
I started with this documentation. As I went about debugging the Python script, I went into a rabbit hole. The problem: I used the Thorny Python IDE to run the script. It turns that the environment is in 2 but my script was in 3. 
Issues: I noticed that the console was throwing each line as an error. So I started debugging line by line. It started with missing libraries. A lot which I installed but the part that eventually made me start from scratch was the missing Adafruit DHT library. Akash (Software background) did a quick check and told me that it was deprecated. So I asked a classmate, Nick Boss, who knew CS to help me find a workaround. Initially we tried to rewrite the code but it was still throwing errors. It came down to GPIO pin library. I am still not sure what the exact problem was. Nick used iPython. I don’t think I understood it but after adding another GB of library and no clear solution, I realised that it’s best to pause.
⇩ This is in progress:
I found a much cleaner set of instructions in this Github repo.
So far, I finished all the steps and currently figuring out how to add the Pyrebase wrapper for Firebase.
⇩ This worked. Yay!
Tumblr media
Eric offered to help me yesterday connecting Firebase with Node. I don’t know Js plus I haven’t much enough documentation with it so I let me give this a shot.
His first question was how are we connecting the DHT to the Pi. So we searched for node Serial port and found the Serial Port link.
Next, we had to find a way to read the GPIO pins. I couldn’t comprehend the need but nevertheless. We searched for “gpio reading node js” and then found the w3 school documentation on OnOff module for NPM. We used the blinking LED for code reference.
Following up, we searched for the OnOff NPM package.
Next, we had to figure out how to read OnOff dht value. The article here was useful. Alongside, we referred to Tom’s code on GPIO pins here.
The code finally worked and we started to get reading. Or so we thought. The reading was in binary. So we spent some more time to figure it out. We tried to refer to this article but it didn’t finally work. After a while we realized that the sensor isn’t working. Given that it has no role in my project, I instead thought of sending some random data or message to Firebase.
Two things were helpful. Setting the interval as described here and getting a timestamp in Js.
The image above is the screenshot of the same.
0 notes
thecatladyknits · 7 years
Text
I decided I want to start learning more technical web stuff. Possibly reactionary due to feeling like a fake woman in tech, but definitely also because it's happening more and more at work that my colleagues are getting into deep technical explanations that I just don't understand.
I started using this site called free code camp and it's honestly been... surprisingly easy so far. I already knew more than I thought, like inserting links and images using HTML, which I learned when I had a Livejournal, but also stuff like hexadecimal color codes, which I don't know where along the way I learned about them, but I did. Not to say I know them all but I know what they do.
I'm through the basics on HTML and CSS, and it was supposed to take 5 hours, but took me about 2. I'm working on responsive app design now and it's also supposed to take 5 hours but I got through about half of it in like 45 minutes. Like... what??? I'm honestly amazed. Like I get it way more than I thought I would. Especially after the struggle I had with Python during that class in grad school. I cried a little during the exam because I was so stuck, I think the GSA just took pity on me and passed me.
We'll see how it goes, but my plan is to learn HTML, CSS, responsive design, JavaScript, jQuery, and JSON to start. I have no desire to be a full time developer, but hopefully it will help me understand more of what my colleagues are talking about and maybe help my career overall.
2 notes · View notes
mkd16 · 7 years
Text
How I cheated my way to learning how to code
I decided that 2016 would be the year that I’d give learning to code a serious try. So I started with Introduction to Computer Science via Udacity. That course kicked my butt! I found myself wondering constantly: how am I supposed to know this during the frequent quizzes. Most of the time, I’d do some searching and find the correct answer online somewhere. Felt like I wasn’t learning though, but I powered through till the final project. I couldn’t find the answer to that online, so I was done.
I figured I needed to understand the basics of computer science. I really needed to get into the nitty gritty, so I decided to take on the challenge of HarvardX’s Introduction to Computer Science course. The world famous, CS50x. The introductory video said complete beginners could learn, so I dived in and even paid for a Verified Certificate to motivate my frugal behind to finish it by December.
Holy cow! Talk about getting intellectually beat up.
The lectures were lovely: fun and informative, the shorts and section videos made perfect sense. Then I got to the problem sets and was like…wait…what?! I powered through Problem Set 1 which was a super simple one using a children’s learning to programming tool: Scratch. But I could not get that cat to do what I wanted. I made a hideous project. Hideous! I can appreciate beauty, but creating it, designing it myself? Not my strength.
Then Problem Set 2 found me back to my old shady ways looking for answers online. Problem Set 3 - my conscience and good sense were like: how will you learn if you keep cheating (a word I did not want to admit to at first) and not figuring this out for yourself? Btw, did I mention that this was all in C? Like latin for you non-coders out there. Super powerful, but so tedious! Miss one ‘{’ or ‘;’ and the program would scream gibberish at you, that in no way correlated to a missing character, at least not to my noob eyes.
Anyway, I yelled “Fine!” at the better part of my nature and headed to yet another free resource, freeCodeCamp. I breezed through the early HTML and CSS sections. And then the assignment was: go make a website. Wait…what?! I made a website, which was once again hideous. But I kept charging forward. Then, I got to a section called algorithms that used JavaScript. And I was back to my cheating ways both for the exercises and the projects.
Damn it, I thought we were over this!
So I searched and searched some more and found Learn to Code the Hard Way. I started with the free Python book and worked my way through most of it, until I had to design my own game. Nope. Then I tried C and found that to be as tedious as I remembered but it all made a little more sense now.
In early Fall 2016 I went back to CS50x and did well for a couple of problem sets, then back to cheating I went. Well, damn! I powered through, then moved on to MITx’s Introduction to Computer Science. This is taught in a much more beginner friendly language, Python. Something I couldn’t appreciate in Udacity’s Intro course, but now I knew how ugly things could get.
So that’s where I am now (Spring 2017), finishing up the first course in a two course series and finding that I understand so much. At first I thought it was because of the teaching style of this course, but that’s not the only reason. It can’t be. It’s all those months I spent, copying other people’s code, trying to understand it, trying to fit it into mine.
Addendum: It’s now Summer 2017 and I’m continuing to learn. I have to make the leap to working on projects with other people. I’ve taken the first step which is learning with other people via Shannon Turner’s Hear me Code in-person classes. Next step collaborating on a project with Code for DC. I want to contribute actual code and not project management or other supporting duty as my primary contribution. I’ll let you know how that goes.
Thank you for reading and I’d love to hear about your journey to learning something new, coding or otherwise. 
1 note · View note
Text
Startup Tips: Best Tech Stack For Powering Your MVP
The most crucial thing you should consider while processing a top-notch software product is the heap of technologies you are going to work with. Isn’t it? The high-end technologies act as a catalyst in the development of the niche product and the services it provides as an outcome to its target audience.
If we talk about the technically sound people, they don’t find hurdles in cracking the technologies required for developing software, but when it comes to non-tech humans the situation is a bitter one.
The most vital questions often put up by the non-techies in concern to tech stack are:
What are the programming language should we proceed with? Whether to go for Python or pick Java as the programming language?
What is most appropriate when going for the web framework: Node.js or Flask?
What database to opt for the reliable and secure storage of mass databases: MySQL or MongoDB?
At what platform the application should be hosted? What choice should be made between Amazon AWS, Microsoft Azure, or Google Cloud?
Choosing the appropriate tech stack is quite a challenging task for both techies and non-techies in every aspect. Your business needs technology stacks that deliver you high-end services and at the same time boosts your ROI and enhances growth.
In a web development company, the right tech stack acts as a key to your software success.
Are you having an idea for an app in your freaking mind right now? But, you don’t know what the next step should be?
Be patient. We are there for you to provide a better understanding of the tech development stack for your web application.
So, without wasting must time, let’s get started with the basics first:
What is Tech Stack?
A tech stack is a perfect blend of software products and programming languages that are utilized to develop a web or mobile application. It is a pool of tools and frameworks used in software development.
Putting straight, a technology stack is a mix of hardware and software tools along with unique frameworks to deliver and maintain an efficacious app or product. Applications have two software components: client-side and server-side, commonly known as front-end and back-end.
Front-end:
Front end or client-side technologies permit users to see and interact with the program directly with no intervention. Here, the main aim is to deliver convenience to the user while accessing the user interface, and clear internal structures. It normalizes complex systems into discrete ones to make user interactions simpler.
Back-end:
The latter is all about the internal working of an application utilizing all tools and technologies. The subsystems developed to perform logic, interact with databases, coordinate with web services, and provide product development services to the end-users.
The back-end or server-side programming is performed thoroughly by the developers specialized in various technologies, delivering a top-notch software product.
So, let’s suppose if you got an idea for developing a new product and you decide to build an MVP (Minimum viable product).
What next you are looking for?
You start thinking of the tools, technologies, frameworks, and the best tech stack to work on.
You will surely find the answer to these questions in the below article.
The definition of an MVP
Did you ever hear about the fact that nearly 70% of startups and businesses fail?
Can you believe it?  It’s true.
There are certain reasons behind this from poor marketing to a product without a business model and many more.
MVP or Minimum viable Product
MVP or minimum viable product is a Lean Startup Methodology based on build, measure and learn the principle. According to this principle, a minimum viable product has been developed to be launched in the market to measure the customer’s response and behaviour.
The customer's feedback is then used to develop the final product which ultimately leads to less chance of failures. This idea also saves the huge costs and time incurred in the actual web development.
After learning the market, you have 2 options i.e. pivot and persevere. If your key assumptions receive positive feedback from the market, then you should continue with your idea to make the product even better. On the other hand, if you receive negative feedback from your customers, then you should pivot and modify your idea or target audience.
I think you have understood the concept clearly. If not, let’s see a case study that will help you to clear your mind.
You must have heard about “The Instagram”….yes, a social media platform which is quite popular nowadays.
Are you interested in knowing the real idea implemented behind this app and by whom?
Let’s see.
The Instagram app was originated in San Francisco by the two masterminds Kevin Systrom and Mike Krieger.
Kevin created a check-in-app called Burbn, which permits users to check-in where they are currently on their mobile web app.
Kevin analyzed that among all the features of the app, people are only loving the photo element in the app. Kevin knew that this app will not be going to succeed soon. So both the founders decided to pivot their product and focus solely on communication via images.
They remove all the features and focus primarily on the photos, commenting and liking element in the app. The app was renamed as Instagram which is quite popular among youth these days.
So, to deliver the best MVP development services to the customers, the startups should first build up a minimum viable product with the right tech stack and less cost.
Tech stack that empowers your MVP
I have worked with many startups and witnessed their ups and downs in the market for over a decade. Helping startups to develop their MVPs with the right tech stack is quite a challenging task. Choosing the relevant programming language and frameworks for an MVP brings up their advantages & disadvantages.
Here, it comes the right tech stack for your MVP:
Ruby on Rails
When it comes to technology startups, Ruby on Rails frameworks is quite popular. It empowers millions of startup applications, and this technology is perfectly suited for developing MVPs. The Ruby developers can utilize tons of open-source gems to speed up development.
Programming language Characteristics: Ruby is a general-purpose programming language that can build all kinds of applications and is known for its object-oriented nature. The language has a developer-friendly syntax that simplifies coding and significantly speeds the development process.
Domain: The Ruby language based on Ruby on Rails framework enables Ruby developers to deliver secure and functional web applications faster. Some successful software platforms built on Ruby on Rails are Airbnb, Shopify, and GitHub.
For Startups: Ruby gems are not only compatible with the Ruby on Rails but also with other Ruby Frameworks. You can still use the same gems to build your MVP despite having different Ruby Frameworks.
Bottom line: If planning to develop a functional and secure web application in a very short period, then surely Ruby on Rails is the right choice.
Python / Django
It’s time to take a brief look at the Python programming language and its Django framework.
Programming language Characteristics:  Python is an interpreted language with dynamic typing just like Ruby. It emphasizes code readability. Python can be used to implement both small and large-scale applications. When it comes to run time performance, it performs a bit slow, but this issue doesn’t make any difference for startup applications.
Domain: Python is the best known general-purpose programming language that built applications in the sphere of machine learning and artificial intelligence.  The Python programming language acts as a dominant tool for implementing machine learning algorithms, Chatbots, image recognition software and many more. The blend of Python and its Django framework contribute a lot in the successful applications such as the popular social network platform Instagram and the data repository Bitbucket.
For Startups:  According to the latest statistics by GitHub, Python ranks third by the number of repositories. Django has more than 1,500 contributors on GitHub.  Django follows the model-view-template(MVT) architectural pattern to encourage the rapid development of secure and scalable web applications. For building MVPs, startups have great choices available.
Bottom Line: With Django, you can use the complete functionality and power of the Python programming language for your MVP. If your application is based out of machine learning algorithms, then Django and Python is the best choice.
PHP / Laravel
PHP/Laravel is one of the best programming languages that help develop an MVP most efficiently. MVP can be implemented using PHP and its multiple frameworks.
Programming language Characteristics:   PHP is a well known interpreted and dynamically typed general-purpose programming language that’s perfectly suited for web development applications and can be embedded in HTML.
Domain: PHP is a popular programming language that built sound websites on powerful content management systems such as WordPress and Joomla. PHP is considered a great choice for developing versatile web applications, from small landing pages to online stores and social media platforms like Facebook.
Laravel is an open-source PHP framework built using components of Symphony 2. It was designed to extend and explore the functionalities of existing PHP frameworks and enhance rapid application development.
For Startups: The framework enriched with tools, packages to help programmers build fully operational web applications, microservices, and APIs. Many open-source PHP libraries that help developers to speed their development process.
Bottom Line: The PHP proves to be the most suitable technology for your project if you want to eliminate the problem of hiring developers. The powerful Laravel Framework smoothly builds a fully functional web application.
Node.js / Meteor
Node.js is one of the powerful frameworks that implement JavaScript and built real-time web applications.
Programming language Characteristics: Node.js is based on Google’s V8 JavaScript engine that allows programmers to use JavaScript both on the client-side and server-side. The applications built with Node.js ensure high-performance and are scalable.
Domain:  Node.js is a great choice for building real-time web applications such as messaging apps, online games, live chats, etc. Meteor is an open-source full-stack framework tailoring functionalities like rapid prototyping. Startups like Rocket Chat and Tap To Speak choose Meteor to build high-performance applications.
For Startups: The framework provides programmers with out-of-the-box solutions available through the Node.js package. Minimize the amount to code developers by using a rich JavaScript stack. Here, the developers are permitted to build cross-platform applications.
Bottom Line: If you are planning to build a real-time messaging or streaming web application, Node.js is the best choice to opt for. It enables you to write cross-platform code with high speed.
Read also: Top 10 JavaScript frameworks in 2020 for front-end development
The entire above are just the splash of the technologies used to develop applications. There is a pool of the programming languages and frameworks available; you can select any of them to fulfil the requirements of your project. As you can see MVP needs just basic functionality and the right development process to turn it into a market-ready web application in no time.
Wrapping Up
In the end, all I can say that all the programming languages and frameworks have their own strong and weak points. It all our capability to choose the right set of technology that can build your startup business a profitable one. Be mindful of what tools and technologies, you require to make the product that satisfies customer needs.
0 notes