#can you tell i use python for basically everything
Explore tagged Tumblr posts
Text
bro i fucking hate c++ what do you mean i cant declare an array of a cosmic mishmash of any random variable type of unknown size, and then query whats in it by doing if item in list style statement. what do you mean compiled languages are fundamentally different to interpreted languages. what Do You MEAN
#.txt#can you tell i use python for basically everything#but bro i would use it for this (seeed wio terminal) except that the wifi and ble module isnt compatible lol#i love how its advertised as compatible with micro/circuit py and then when u wanna use wifi or ble its like lol sike#so here i am. digging my way thru cpp code that looks like my own personal hell#im being really brave about it though
0 notes
Text
This is sort of an indirect addition to this ask maddy got about learning rust, I haven't actually gotten to learning rust yet but I do want to talk about an incident I recently had with python (I think with C the reasons why you'd rather not use it are fairly obvious) So recently tried to implement a basic matrix class in python, and since I wanted to do a whole thing where I did my own implementations of numerical optimization and more general linear algebra stuff, I tried to do it "properly" and make it "robust" and everything, but without installing any external libraries.
And to me, that obviously involved making sure that the matrix is formatted sensibly, i.e. that a matrix contains m rows of n numbers each. This seemed like a very obvious thing you should do in any serious piece of code, since if the contents of a matrix are accidentally formatted in a weird way, then you might get errors, or, significantly worse, python might just decide that it "can handle them" anyways and do some really unintuitive dumb stuff that's really hard to debug. (See this older post of mine for an example of how the pythonic willingness to work with bad inputs leads to really weird unintuitive behavior).
Turns out this is not something you can do directly in python without installing external type checking libraries! And I didn't want to just loop through all the contents and check their type individually during object creation, since that felt incredibly slow, stupid and inefficient. It didnt help that my algorithms theory exam was coming up soon, which meant I was thinking about asymptotic runtimes all day.
And so I was like "well surely at least it's easy to check for a matrix being a 2D array with consistent row sizes". However, at this point, with dawning horror, I came to a realization:
and at this moment I could just feel pretty much all of my remaining "python is easy to work with" attitude turning into dust and soaring away in the wind. If anyone here knows a way to enforce a given argument being a 2D array of numbers with consistent row sizes that doesn't involve O(n*m) overhead during object creation and that can be implemented in python using only internal modules (no external type checkers that need to be installed manually first) please tell me lol
50 notes
·
View notes
Text
Fic Idea: Growing in the Sun’s Shadow
Hyacinth, larkspurs and irises grow in the presence of the sun as if following its shadow. Apollo’s children are deeply intimate with this fact,
This is actually a multi-part fic series where hyacinth, larkspurs and irises spontaneously sprout around the Apollo kids during moments of emotional distress and imminent danger. I got real inspired by a few Apollo/Hyacinthus fics I read on Ao3 where Hyacinthus as a plant or ghost keeps an eye out for his lover's demigod kids.
Part 1 is about the kids themself and thus titled, His Children. The blurb goes sm like this (blurbs help me settle ideas so I have em for nearly everything)
Hyacinth, larkspurs and irises have seemingly followed in the footsteps of Apollo’s children for millennia. The flowers sprout at their feet in moments of emotional distress, more often than not the fear of imminent danger.
It was in a way weirdly reassuring, that should they fall, a bed of flowers would be their grave.
The last bit is especially interesting imagery to me, imagine the Labrinth or Manhattan Battle just sprawled all around with flowers, its so beautiful yet grim. Also want to explore some thoughts about how the kids feel that flowers made from the blood of their dad's dead lover is more present in their life than their dad (to the point that one of the ways to identify an Apollo child is whether purple flowers grow around them).
Part 2 is about Apollo himself, specifically mortal Apollo (LESTER WHEN I GET YOU) titled Him and goes smth like this.
Apollo knew of the flowers that followed his kids, but never experienced it for himself, atleast not as a mortal till they sprouted around him through the cracks of a new york dumpster alleyway.
Basically, this is TOA but every time smth bad happens to Lester (so all the time), flowers grow around him and how he and those around him react to it. This constant reminder of Hyacinthus' death, yet also of his love for him. Meg would be really interesting here, cause I think until she points it out, Apollo would def be working under the assumption that the flowers grow around him because he created them and are now haunting him in his guilt. But Meg who can feel the plants and pulls no punches would tell him that he's stupid cause these flowers are so full of love and longing for the former god.
Can you tell I love this pairing,
I have more tentative ideas for this, one being that Hyacinthus actually comes back to life. During the battle with Python (while still in the Cave of Delphi), the flowers grow all at once to shield Apollo from an attack and in this act the rest of Hyacinthus' spirit kept in the flowers dissipates, allowing him to finally be reborn.
And the story basically follows the reborn Hyacinthus as a modern-day teenager as he gets (re) embroiled in greek myths and meets Apollo again. Mostly its about how he feels trying to find an identity for himself, both as he was and as he is now.
No matter in this one or in another (previously posted about fic), I am having the guy come back to life. I'm a sucker for reincarnation stories of doomed lovers, there's something so interesting about loving and caring about someone so much not only do you tie yourselves together in this but the next as well.
Anyway, headcanons about reincarnated Hyacinthus.
+ I've dubbed him Cyn, short for Cynthia which is actually his middle name (his first is Hubert but he never felt like enough of a Hubert to use it). In universe I think Cynthia might be a grandma or smth, but really its cause Cynthia the Sinnoh champion is a historian and as the son of the Muse of History Clio, Cyn would be perfect as a reference to the full name.
+ The idea first came to me when the fanfic Would You Fall In Love With Me Again (https://archiveofourown.org/works/57144403/chapters/145343578) (a Hyacinthus comes back to life via golden fleece fic) used Cinthy as a nickname for him. Anyway if you need some Apollo/Hyacinthus fic this one is fantastic its from the perspective of the man back from the dead himself, absolutely brilliantly written 10/10.
+ I think it would be funny if he is a demigod son of Dionysus. It was either him or Demeter (cause ya know, spend a few millenium as a flower) and I think Mr. D would be the funniest option and I need to see more of him as a dad. (also purple eyes). I might not actually make him a demigod, though, maybe just a normal mortal but if he was...
I claw at more content of them, I love tragic lovers
#fanfic#trials of apollo#lester papadopoulos#percy jackon and the olympians#cabin 7 kids#hyacinthus comes back to life#apollo/hyacinthus (pjo)#tragic lovers with reincarnation#lief rambles
46 notes
·
View notes
Text
BRB... just upgrading Python
CW: nerdy, technical details.
Originally, MLTSHP (well, MLKSHK back then) was developed for Python 2. That was fine for 2010, but 15 years later, and Python 2 is now pretty ancient and unsupported. January 1st, 2020 was the official sunset for Python 2, and 5 years later, we’re still running things with it. It’s served us well, but we have to transition to Python 3.
Well, I bit the bullet and started working on that in earnest in 2023. The end of that work resulted in a working version of MLTSHP on Python 3. So, just ship it, right? Well, the upgrade process basically required upgrading all Python dependencies as well. And some (flyingcow, torndb, in particular) were never really official, public packages, so those had to be adopted into MLTSHP and upgraded as well. With all those changes, it required some special handling. Namely, setting up an additional web server that could be tested against the production database (unit tests can only go so far).
Here’s what that change comprised: 148 files changed, 1923 insertions, 1725 deletions. Most of those changes were part of the first commit for this branch, made on July 9, 2023 (118 files changed).
But by the end of that July, I took a break from this task - I could tell it wasn’t something I could tackle in my spare time at that time.
Time passes…
Fast forward to late 2024, and I take some time to revisit the Python 3 release work. Making a production web server for the new Python 3 instance was another big update, since I wanted the Docker container OS to be on the latest LTS edition of Ubuntu. For 2023, that was 20.04, but in 2025, it’s 24.04. I also wanted others to be able to test the server, which means the CDN layer would have to be updated to direct traffic to the test server (without affecting general traffic); I went with a client-side cookie that could target the Python 3 canary instance.
In addition to these upgrades, there were others to consider — MySQL, for one. We’ve been running MySQL 5, but version 9 is out. We settled on version 8 for now, but could also upgrade to 8.4… 8.0 is just the version you get for Ubuntu 24.04. RabbitMQ was another server component that was getting behind (3.5.7), so upgrading it to 3.12.1 (latest version for Ubuntu 24.04) seemed proper.
One more thing - our datacenter. We’ve been using Linode’s Fremont region since 2017. It’s been fine, but there are some emerging Linode features that I’ve been wanting. VPC support, for one. And object storage (basically the same as Amazon’s S3, but local, so no egress cost to-from Linode servers). Both were unavailable to Fremont, so I decided to go with their Chicago region for the upgrade.
Now we’re talking… this is now not just a “push a button” release, but a full-fleged, build everything up and tear everything down kind of release that might actually have some downtime (while trying to keep it short)!
I built a release plan document and worked through it. The key to the smooth upgrade I want was to make the cutover as seamless as possible. Picture it: once everything is set up for the new service in Chicago - new database host, new web servers and all, what do we need to do to make the switch almost instant? It’s Fastly, our CDN service.
All traffic to our service runs through Fastly. A request to the site comes in, Fastly routes it to the appropriate host, which in turns speaks to the appropriate database. So, to transition from one datacenter to the other, we need to basically change the hosts Fastly speaks to. Those hosts will already be set to talk to the new database. But that’s a key wrinkle - the new database…
The new database needs the data from the old database. And to make for a seamless transition, it needs to be up to the second in step with the old database. To do that, we have take a copy of the production data and get it up and running on the new database. Then, we need to have some process that will copy any new data to it since the last sync. This sounded a lot like replication to me, but the more I looked at doing it that way, I wasn’t confident I could set that up without bringing the production server down. That’s because any replica needs to start in a synchronized state. You can’t really achieve that with a live database. So, instead, I created my own sync process that would copy new data on a periodic basis as it came in.
Beyond this, we need a proper replication going in the new datacenter. In case the database server goes away unexpectedly, a replica of it allows for faster recovery and some peace of mind. Logical backups can be made from the replica and stored in Linode’s object storage if something really disastrous happens (like tables getting deleted by some intruder or a bad data migration).
I wanted better monitoring, too. We’ve been using Linode’s Longview service and that’s okay and free, but it doesn’t act on anything that might be going wrong. I decided to license M/Monit for this. M/Monit is so lightweight and nice, along with Monit running on each server to keep track of each service needed to operate stuff. Monit can be given instructions on how to self-heal certain things, but also provides alerts if something needs manual attention.
And finally, Linode’s Chicago region supports a proper VPC setup, which allows for all the connectivity between our servers to be totally private to their own subnet. It also means that I was able to set up an additional small Linode instance to serve as a bastion host - a server that can be used for a secure connection to reach the other servers on the private subnet. This is a lot more secure than before… we’ve never had a breach (at least, not to my knowledge), and this makes that even less likely going forward. Remote access via SSH is now unavailable without using the bastion server, so we don’t have to expose our servers to potential future ssh vulnerabilities.
So, to summarize: the MLTSHP Python 3 upgrade grew from a code release to a full stack upgrade, involving touching just about every layer of the backend of MLTSHP.
Here’s a before / after picture of some of the bigger software updates applied (apologies for using images for these tables, but Tumblr doesn’t do tables):
And a summary of infrastructure updates:
I’m pretty happy with how this has turned out. And I learned a lot. I’m a full-stack developer, so I’m familiar with a lot of devops concepts, but actually doing that role is newish to me. I got to learn how to set up a proper secure subnet for our set of hosts, making them more secure than before. I learned more about Fastly configuration, about WireGuard, about MySQL replication, and about deploying a large update to a live site with little to no downtime. A lot of that is due to meticulous release planning and careful execution. The secret for that is to think through each and every step - no matter how small. Document it, and consider the side effects of each. And with each step that could affect the public service, consider the rollback process, just in case it’s needed.
At this time, the server migration is complete and things are running smoothly. Hopefully we won’t need to do everything at once again, but we have a recipe if it comes to that.
15 notes
·
View notes
Text
Anyone can program (yes, even you)
"Programming is easy"
I saw some variations of this statement shared around the site recently, always in good intentions of course, but it got me thinking.
Is that really true?
Well it certainly isn't hard in the way some developers would want to make you believe. A great skill bestowed only upon the greatest of minds, they're the ones making the world work. You better be thankful.
That is just elitist gibberish. If anyone ever tells you that programmers are "special people" in that way, or tries to sell you on the idea of "real" programmers that are somehow better than the rest, you can safely walk in the other direction. They have nothing of value to tell you.
But I think the answer is more complicated than a simple "Yes, programming is easy" too. In all honesty, I don't think it's an easy thing to "just pick up" at all. It can be very unintuitive at first to wrap your head around just how to tell a computer to solve certain problems.
One person in the codeblr Discord server likened it to cooking. That's a skill that can be very hard, but it's also something that everyone can learn. Anyone can cook. And anyone can program.
I really mean that. No need to be good at maths, to know what a bit is or whatever it is people told you you need. You're not too old to learn it either, or too young for that matter. If you want to start programming (and you can read this post), you already have everything you need. You can write your first little programs today!
One of the cool things about programming is that you can just fuck around and try lots of stuff, and it's fine. Realistically, the worst thing that can happen is that it doesn't work the way you imagined. But you'll never accidentally trigger the fire alarm or burn your house down, so feel free to just try a bunch of stuff.
"Okay I want to learn programming now, what do I do?"
That's awesome, I love the enthusiasm! As much as I'd love to just give you a resource and tell you to build a thing, you still have to make a choice what you want to learn first. The options I'd recommend are:
Scratch: A visual education tool. The main advantage is that you don't have to worry about the exact words you need to write down, you can just think about the structure of your program. The way it works is that you drag and drop program elements to be executed when they should be. You can relatively quickly learn to make cute little games in it. The downside is that this isn't really a "professional" programming language, so, while learning from Scratch will give you the basics that apply to most languages and will make switching to another language easier, you're still gonna have to switch sooner or later. Start here: https://scratch.mit.edu/
Python: The classic choice. Python is a very widely used, flexible programming language that is suited for beginners. It is what I would recommend if you want to skip right to or move on from Scratch to a more flexible language. https://automatetheboringstuff.com/ is your starting point, but there's also a longer list of resources here if you want to check that out at some point.
HTML/CSS/JavaScript: The web path. HTML and CSS are for creating the look of websites, and JavaScript is for the interactive elements. For example, if you ever played a game in your browser, that was probably written in JS. Since HTML and CSS are just for defining how the website should look, they're different from traditional programming languages, and you won't be able to write programs in them, that's what JS is for. You have to know HTML before you learn CSS, but otherwise the order in which you learn these is up to you. Your JavaScript resource is https://javascript.info/, and for HTML and CSS you can check out https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web.
I put some starting out resources here, but they're really just that - they're for starting out. You don't have to stick to them. If you find another path that suits you better, or if you want to get sidetracked with another resource or project, go for it! Your path doesn't have to be linear at all, and there's no "correct" way to learn things.
One of the most important things you'll want to do is talk to developers when you struggle. The journey is going to be frustrating at times, so search out beginner-friendly coding communities on Discord or wherever you're comfortable. The codeblr community certainly tends to be beginner-friendly and kind. My DMs and asks are also open on here.
#programming#is that a motherhecking RATATOUILLE reference??!?#codeblr#coding#the only reliable predictor of whether someone can be a good programmer is whether they have or can develop a passion for programming#how did me thinking “well is programming actually easy" turn into a resources post uhm#coding resources#shoutouts to the codeblr discord they're coo#long post#Most good programmers do programming not because they expect to get paid or get adulation by the public; but because it is fun to program#- Linus Torvalds
24 notes
·
View notes
Text
I think a lot sometimes about the pushback against the concept of talent within arts and I mean yeah on some level I get it, but also the suggestion that anyone can learn to draw is, to me, like saying anyone can learn to program.
like yes, sure, at the end of the day just about anyone can likely find some way of forming vague scribbles using their tool or input peripheral of choice, but that's basically like saying just about anyone can find ways of writing semicolons and the words if, then, else on some kind of digital computer - the difficulty was never in achieving the most basic and abstracted interpretation of the act, but in an understanding of how your actions translate into the kind of end result that you want.
in programming, the most basic starter program that nearly every extremely basic example or tutorial will start with is called Hello World, which is simply a program that prints or otherwise displays the text Hello World to the user.
#include <iostream>
in python, this can be done with a single line of code, like so:
print("Hello World!")
while in C++, that same program will take a bit more work:
#include <iostream>
int main()
{
std::cout << "Hello World!\n";
return 0;
}
Now if you have the ability to copy that text into a file then congratulations, you have the ability to write a program! But, obviously, to really do any actual programming, you kind of need to know what any of the above actually means and what it makes the computer actually do.
This by the way is why the "Learn to Code" kind of initiatives tend not to work out very well, because while technically anyone can write code, actually understanding how to code is a much more complicated affair that can't necessarily be directly taught - it's something that has to be understood.
What is needed, basically, is a system - a kind of mental library of symbols and concepts that you can rearrange and reassemble in various ways to reach a particular solution; a point where you can break down a larger problem into a bunch of much smaller, more individualised problems that are easier to solve one by one.
This is basically how expertise works - whether consciously or (much more often!) not, you form models and systems in your head to let you simplify and, to an extent, automate otherwise complex tasks. If you've ever looked at something and just felt this feeling of "aha, I see how this works", then you should technically already know what I'm talking about.
And look, this is not an argument against practice - expertise takes work, it takes training and experience and gradually discovering ways in which things start making sense to you, even those things that you might have an intuitive knack for. However, what I do think is that telling people who say they can't draw to "just draw anyway" is a lot like, and just as dismissive as, "Learn to Code" because, just like how saying "I don't know how to code" generally is not meant to be understood as "I am physically unable to write words into a text document", saying "I can't draw" typically does not mean being physically unable to form lines or shapes on paper or in a digital image or whatever. Rather, it's a statement about being unable to break down the problem of how to reach a desired end result into smaller, manageable steps that you are able to grasp. And, much like with programming, not everyone will have an eye, or a mind, for it: just like some people struggle with spelling or mathematics or, indeed, code, some people also struggle with colour or perspective or object shape or lighting and shading. And, by contrast, for some people these things also come much more easily and naturally than others.
Not everyone can do everything - at least not to such an extent that it would let them do something they would want to do. Practice can help, certainly, but it's not necessarily guaranteed to bridge the gap either. I mean, I personally find it baffling how many people seem to struggle with what I consider basic computer literacy, but that's a lot to do with the fact that I just happen to find much of it pretty simple and straightforward where a lot of people don't. Not everyone has a base aptitude to build on for every field or skill, and that's both fine and normal. And I mean - something as simple as the ability to put in the effort to practice and learn a particular skill or expertise is in itself a skill, and one that can be very selective about what contexts it's willing to apply to.
9 notes
·
View notes
Text
I had an email this morning about using AI to add comments to code, and since I've actually had good results with asking ChatGPT "hey what does this code do" I decided to try it out using a competely uncommented python script I happened to have lying around. I think I'd give like... a C+, maybe? It did a passable job. Everything it wrote was an accurate description of what the code was doing, so it did not make the code worse. But it did not add comments indicating the types and structures of function arguments, which is very important for understanding python code, it did not add comments about the structure of a dictionary that was constructed using nested dictionary comprehensions which I would probably find difficult to understand if I hadn't written it myself, and it did not explain the overall algorithm on a high level, but merely commented on what the individual parts of it were doing. But, since it did not add anything that was incorrect, and since some comments are better than no comments, it technically improved the code. Not by much, since I don't think it added any information that you couldn't figure out on your own pretty quickly, but maybe it would help someone?
I think potentially, code understanding could be something else that is a legitimate use for it - like, if someone gives you a python script or a browser script and tells you it will do something you want to do, and you don't know that language at all, I think it would be useful to have something that can look at it and say, yeah, this does what you think it does, it's not going to mine crypto - like basically a kind of Google translate for translating programming languages into English, where it's all right if it's not exactly perfect, as long as it's more or less approximately correct. But I would like to see it tested with bad code, with messy code, with ofuscated code that's been formatted to create ASCII art - that kind of stuff, because if someone is going to write a crypto miner and try to get people to run it, it's going to be super obfuscated, and I have a feeling ChatGPT won't be good at interpreting that.
But these are the basic kinds of cases where generative AI might actually be a good tool: a) it's not necessary that the output be perfect, innovative or creative, b) something is better than nothing, even if it's not that great, and c) you're not using it in place of a professional you'd otherwise be paying.
I also gave it some phonologies from some conlangs and asked it to generate words, but it exclusively generated CVC words until I told to it use more syllables, at which point it exclusively generated CVCV and CVCVCV words. When I told it to please use at least some of the many consonant clusters, it begrudgingly generated three CCVCVCV words, but the remaining two were once again CVCVCV. I didn't have any real hope that it would succeed at this, but I was hoping for something at least a little less boring.
4 notes
·
View notes
Note
Prime numbers of the ask game let's go!
This is gonna be a long old post haha /pos
2. What math classes did you do best in?:
It's joint between Analysis in Many Variables (literally just Multivariable calculus, I don't know why they gave it a fancy name) and Complex Analysis. Both of which I got 90% in :))
3. What math classes did you like the most?
Out of the ones I've completely finished: complex analysis
Including the ones I'm taking at the moment:
Topology
5. Are there areas of math that you enjoy? What are they?
Yes! They are Topology and Analysis. Analysis was my favourite for a while but topology is even better! (I still like analysis just as much though, topology is just more). I also really like group theory and linear algebra
7. What do you like about math?
The abstractness is really nice. Like I adore how abstract things can be (which is why I really like topology, especially now we're moving onto the algebraic topology stuff). What's better is when the abstract stuff behaves in a satisfying way. Like the definition of homotopy just behaves so nicely with everything (so far) for example.
11. Tell me a funny math story.
A short one but I am not the best at arithmetic at times. During secondary school we had to do these tests every so often that tested out arithmetic and other common maths skills and during one I confidently wrote 8·3=18. I guess it's not all that funny but ¯\_(ツ)_/¯
13. Do you have any stories of Mathematical failure you’d like to share?
I guess the competition I recently took part in counts as a failure? It's supposed to be a similar difficulty to the Putnam and I'm not great at competition maths anyway. I got 1/60 so pretty bad. But it was still interesting to do and I think I'll try it again next year so not wholly a failure I think
17. Are there any great female Mathematicians (living or dead) you would give a shout-out to?
Emmy Noether is an obvious one but I don't you could understate how cool she is. I won't name my lecturers cause I don't want to be doxxed but I have a few who are really cool! One of them gave a cool talk about spectral geometry the other week!
19. How did you solve it?
A bit vague? Usually I try messing around with things that might work until one of them does work
23. Will P=NP? Why or why not?
Honestly I'm not really that well versed in this problem but from what I understand I sure hope not.
29. You’re at the club and Grigori Perlman brushes his gorgeous locks of hair to the side and then proves your girl’s conjecture. WYD?
✨polyamory✨
31. Can you share a math pickup line?
Are you a subset of a vector space of the form x+V? Because you're affine plane
37. Have you ever used math in a novel or entertaining way?
Hmm not that I can think of /lh
41. Which is better named? The Chicken McNugget theorem? Or the Hairy Ball theorem?
Hairy Ball Theorem
43. Did you ever fail a math class?
Not so far
47. Just how big is a big number?
At least 3 I'd say
53. Do you collect anything that is math-related?
Textbooks! I probably have between 20 and 30 at the moment! 5 of which are about topology :3
59. Can you reccomend any online resources for math?
The bright side of mathematics is a great YouTube channel! There is a lot of variety in material and the videos aren't too long so are a great way to get exposed to new topics
61. Does 6 really *deserve* to be called a perfect number? What the h*ck did it ever do?
I think it needs to apologise to 7 for mistakingly accusing it of eating 9
67. Do you have any math tatoos?
I don't have any tattoos at all /lh
71. 👀
A monad is a monoid in the category of endofunctors
73. Can you program? What languages do you know?
I used to be decent at using Java but I've not done for years so I'm very rusty. I also know very basic python
Thanks for the ask!!
7 notes
·
View notes
Text
amis & co pet headcanons:
enjolras and combeferre's place:
enjolras has a black cat named antoine that he adopted at a shelter. he picked him because he was scheduled to be put down soon and he last-minute offered to foster him instead. we all know how fostering cats goes sometimes, so long story short, enjolras ended up with a cat. combeferre has a mutt dog that he found on the side of the road and nursed back to health. her name is laika, and ironically she spends most of her time bothering enjolras.
courfeyrac and marius's place:
courfeyrac is allergic to everything with fur, pretty much, and so he and marius keep fish and give them funny names. so far they've had fish of varying degrees of strangeness named after several US politicians.
feuilly and bahorel's place:
feuilly can't afford/doesn't have time for a pet of his own, so he just mooches off bahorel's dogs. bahorel has two dogs, a massive pit bull rescue named baxter, and a tiny shih-tzu named mitch. the amis suspect that he named them those things so he could call them "bastard" and "bitch", which he neither confirms nor denies.
joly, bossuet, and musichetta's place:
bossuet bonded with a pigeon and now it's basically a house pet. he named it homer, because get it? homing pigeon? but also a classics reference? IT'S A PUN! joly was terrified of it at first but calmed down once he learned that pigeons are unlikely to carry diseases that are transmittable to humans. musichetta wants a cat but joly's allergic, so she feeds the local strays instead.
jehan and grantaire's place:
jehan has a big snake. it's a ball python named percy, named after the mythological hero perseus but also percy shelley. they've had it ever since they were a kid, because those snakes live fucking forever. bahorel is secretly terrified of it, especially when the freeze dried rats are involved. grantaire has a cat that he calls trash can (I saw this in a fic once and it stuck). the snake and the cat have a pact of mutual non-aggression.
cosette's place:
cosette rescues guinea pigs. her father always kept them when she was a little kid, and she has a fondness for them. she always makes sure to have at least two at once, because she read that they get lonely otherwise. this means she's caught in an endless cycle of guinea pigs, but she doesn't mind.
eponine, azelma, and gavroche's place:
they have a scrawny little cat named rat. well, it's technically gavroche's cat, but you know how kids are with taking care of their pets. the story behind the cat is that gavroche found it on the street being ganged up on by about a half dozen rats, so he "rescued" it. and then named it "rat" in a fit of irony. nobody knows if rat is a boy or a girl, and even the vet couldn't tell for sure.
20 notes
·
View notes
Text
hq!! ctt [log 1]
you are here | log two | three
an acronym for "Haikyuu!! Cross Team Match" for the 3DS. oh, how i love to start projects that i inevitably drop. but for now, i make a log because this is really hard. i'm having flashbacks to when i tried to fix the FE12 patch for NoA localizations... only for the solution to be "make a serenes forest account"
so here's rom hacking. from someone who doesn't code. this can only go well.
Step 1: extract files from game
easy. i already have a 3DS with custom firmware because why wouldn't you have one at this point, nintendo loves to kill everything they ever once loved
extra easy. i actually have a cartridge. back in the day of Fire Emblem Gay Fates, i used OOT3DS to use a launch method called HANS. it also let you bypass region lock. and then i never touched the game again because i was a plebian in japanese. now i am an elementary schooler.
First, search "3ds game hacking basic." thank you, reddit post. i recognize the "romfs" folder from the Gay Fates days.
Second, get confused as to whether I have GodMode9 or not. (Did not.)
Third, using the "Universal Updater" app on my 3DS, download "GodMode9" so I can actually do the steps listed on reddit.
Fourth, to actually access GodMode9, hold SELECT while booting 3DS and then you can follow the tutorial.
(You're gonna press B a lot to back back in the directory. To actually copy the romfs folder, make sure to scroll up to the "SDCARD" folder because the beginning is the /root folder.)
oh no these files are different than the ones listed in the table of the reddit post
Step 2: wtf are ".arc" files
After discovering that NARC =/= .arc files, I went down a long rabbit hole.
".arc" files are archived files, and every company has a different way of compressing these files. Oh no.
The default decompression pattern built into most of these tools is for Nintendo (NARC file), because duh you're on the 3DS
There is one extractor tool for some Capcom games like Monster Hunter and Resident Evil called ARCTool.
none of those worked :')
An important note is I tried using "Tinke," an old tool because it's for DS roms instead. I used it once for Princess Debut.
(Side note, I should really finish extracting all of those and upload them to Spriter's Resource.)
It took a long time tbh but this GBAtemp forum post helped to get to the next step.
As written in the forum post, grab the files to deal with the "ustarc" and "ustcomp" files. Search and get the "QuickBMS" thing also mentioned in the post.
Open a file using Notepad/++ to see which prefix is in the file. Using that same file in QuickBMS, choose the correct script that matched the prefix. Using it on romfs/main/tutorial/tutorial_upper.arc gives me... "tutorial_upper.arc." Huh.
Going back to Tinke, it told me that the file was originally a "ustc" file... like in "ustcomp." After using QuickBMS, Tinke now tells me it is a SARC file. That is suspiciously close to a NARC file.
Step 3: i hope SARC files exist
They do exist normally! Progress!!
The first search result of "SARC Tool" did not work for me. The second result of "SARC Extractor" did work, however. And it has a release on the right column! A boon for me, who doesn't code--hold on i'm gonna have to repack all these files after editing them.
...I hope SARC Tool works later, but anyways
Using SARC Extractor on the new tutorial_upper.arc gives me tutorial_upper/arc/blyt and tutorial_upper/arc/timg.
In the blyt folder, there are only two files called tu_a01_upper.bflyt and tu_title_upper.bflyt.
In the timg folder, there are 11 files all with the ending of .bflim.
Step 4: .bflyt and .bflim
A search of ".bflyt file" gives me this "(Switch) Layout Editor." It does work, but I also probably shouldn't mess around with this file if it's about a layout. That's not the goal here.
A search of ".bflim file" gives me "BFLIM Tool," but it doesn't work for me... (holds head in hands)
I do find "3dstools" and "3DSkit" but those require me to have Python. Which I don't. Because I don't code.
Out of desperation, I put all of these into something that didn't work with the compressed .arc files from before, called "Every File Explorer."
...Huh, it actually works! And the graphics are exactly what I thought they'd be!!
...But the buttons in each individual window are greyed out, which would've been really useful. By hovering over them, I can see that they are Save, Import, and Export. Damn.
Not to mention how all of them are in the wrong orientation and/or mirrored...
Well, it's time to try out 3DSkit, because it lists exactly what version of Python I need. There's just one thing.
Step 5: What is even in the romfs folder?
Yeah, maybe I should take inventory first. 3DSkit actually does a lot of files, so I should see what I can do with it. The main romfs folder actually has two folders: "main" and "test."
In the "main" folder, there are a whole bunch of folders which are self-explanatory, like "save_slot" and "mini_game." This is also where I got the tutorial_upper.arc file.
Most of the folders contain that compressed .arc file type. With the exception of...
common = .dat .arc .bffnt .incs
effects = .ptcl
mini_game = .arc .dat .bffnt
shader = .shbin .bch
sound = .arc .bcsar ...and has a folder named "stream" containing only .bcsar
vbl = .arc .bch
Now, I'm scared of the "test" folder because of one folder. The two folders in here are "fhq" and "script." The folder itself also has files in it, ending in arc, bch, ptcl, and incs.
The "fhq" folder just has another folder called "item", and going to that has three files that can probably be edited in Excel. Actually.
EnemyStateList.csv, ItemDataList.csv, and ItemDataTable.csv. When going through FE11/12 stuff, I saw something like this table, so it's not that unbelievable.
(Might need to restore that folder I deleted to doublecheck though. I'm not sure if they edited it, or if they romanized all the hira/katakana.)
Up next in log 2 because it's midnight now oh no: Step 5.5: oh god the "script" folder
Bonus: A GBATemp forum post was also suffering in BFLIM files, and they had tried a program called Kuriimu. I tried using it for compressed .arc files earlier, but got nothing. So I tried it out.
First, the Github release actually has three tools: Kuriimu, Kukkii, and Karameru. Kukkii is the one that deals with BFLIM files and it works omg
Second, Karameru can actually read the tutorial_upper.arc file that was made after using QuickBMS.
Third, I'm actually two versions behind for the Kuriimu trio, so I should go and update mine oops
#self log#hq!! ctt#god i hope that doesn't show up in searches#there's a post privately button but fuck that noise
2 notes
·
View notes
Text
Shangri-La Frontier Episode 2: A Peculiar One
Worldbuilding. Incredibly important, hard to pull off sometimes. Shangri-La Frontier seems to have zero problem with it. As it does with action, and comedy, and basically everything. It's an incredibly smooth series through these two episodes, and it gives me a lot to talk about!
So let's talk worldbuilding first. While the wolf does show up in the opening, it's actually featured somewhere else more importantly. Yeah, in the image that I used for the cover of this post.
One of the new players actually points out the emblem that adorns this massive suit of armor. That emblem being a wolf holding a sword. Hmm, interesting choice for what's noted as an "achievement focused clan". To put two and two together, the clan's chasing after the unique monster that appeared to Sunraku at the end of the episode. Mostly because after we're treated to its appearance, we've learned that zero unique monsters have been defeated.
What about sneaky boss mechanics then? Ravenous Python is the area boss that blocks beginners from making it to the second town. Forcing them into parties is a great way to foster communication and interaction in this big world, so it's a great idea for a starter boss. Even better than that though is its design, with hair/fur on the head and the tail.
Like me, Sunraku didn't really think it anything important, but we find out that the python can spew poison from its tail. Immediately, the pieces fall into place, it's a little hint/giveaway at the fact that the tail is also a weapon/danger. Very very neat detail.
Some more boss details! While it's not officially stated, while Sunraku is stacking crits on the Python, it looks like it's potentially being staggered? That is, being hit with a critical temporarily stuns/staggers an enemy which provides an additional opening. Of course, being able to stack crits means that the stagger would be overpowered, so the python recovers rather quickly.
After the python dies we finally make our way to the first (though really second) town of the series, where we get some time with different players before seeing Sunraku. Not anything crazy, but the fact that they're telling us about what denotes a PKer is pretty interesting. What they don't say though is if there's any debuffs or real purpose to killing players, and where you can do it. They're only just outside the town so there's most likely not a safe area, but is it possible for them to fight in the town? Just some random thoughts I got from the episode.
So, Sunraku's in the second town now, and because he's died and has a skill penalty, he's decided to do some shopping. Really plain and simple idea, but they show off the armor he purchases as being from Mud Frog's, which are a rather simple/passive mob with a gimmick in the area. Really great idea for starter items, since they're easy to farm and only provide specific/simple defenses. Also, Mud Frog's another monster name from FFXII (though it doesn't bare any resemblance). Starting to think that the author might have a favorite game.
And this is where things start to get interesting with the world. When the NPC blacksmith says that nighttime's dangerous, they mean it. I love this idea and how they execute on it, starting with a Redcap Goblin. It might not have the iron greaves that typically denote a Redcap (though Overlord's do have them), it's still undeniably inspired by the D&D monster.
Even more interesting is the approach. It wears more complicated clothing than the beginner Goblin, sporting a necklace even as decoration. Further, it has a proper metal axe, a weapon even nicer than the blades of the Vorpal Bunnies in terms of quality.
The icing on the cake though is its intelligence. It's got a fighting style that can resemble the reckless abandon of the original goblin, but has far more refinement and a much more intense attack pattern, featuring things like even throwing their axe.
One step above that is how they treat the creatures of the night. This thing is clearly intelligent as it summons allies to its side. Like Sunraku says, this is typically a weak monster's trait, but when applied to a high level one makes them even more dangerous, essentially enforcing a time limit on the fight for viability. Really really cool stuff that doesn't just use overpowered monsters to make the night difficult. It ups the intelligence of them in several ways, arguably the most notable being the fact that these monsters roam at night when there's less people (making it safer for the monsters). Really really cool ideas.
Anyways, the episode itself is really really impressive in a lot of ways like I said before. The humor hits well and is balanced with the game talk and interaction, the story builds slowly and surely about the norms in regards to partying up and interaction (which is something Sunraku doesn't get in their experience with other games), the action is impeccably paced and the choreography is truly impressive, and the camera work is just insane, the tricks and ideas they implement in its movement are really really great. C2C is standing tall on all fronts with Shangri-La Frontier, poised to make it a remarkable and memorable experience.
#shangrila#shangri la frontier#shangri-la frontier#c2c#studio c2c#c2c studio#vrmmo anime#isekai anime#anime review#anime and manga#anime#anime recommendation#anime reccs
4 notes
·
View notes
Text
"Lancelot is a fanfiction OC"
So I can't speak to @specialagentartemis's point about how fanfic works, but I can talk a bit about the growth of Arthurian canon, and how things get added to it!
(I pray @becausegoodheroesdeservekidneys 's forgiveness for not getting into the cultural appropriation aspect of it. There is just. So much.)
Basically, it's all additions.
Our earliest reference to Arthur - maybe - is Y Gododdin, an Old Welsh poem that's a collection of elegies for Celtic Britons who died at the Battle of Catraeth. In one stanza, the poet praises the warrior Gwawrddur, but follows the praise with "though he was not Arthur".
Our earliest reference for events of Arthur's life - maybe - is Annales Cambriae, which contains two entries that mention Arthur:
516: The Battle of Badon, in which Arthur carried the Cross of our Lord Jesus Christ for three days and three nights upon his shoulders and the Britons were the victors.
537: The battle of Camlann, in which Arthur and Medraut fell: and there was plague in Britain and Ireland.
(James Ingram's 1912 translation, pulled from Wikisource) "Medraut" is usually known in English by the name Mordred. What role does he play here? In later stories, he's Arthur's enemy, but here? Who knows? (Rachel Bromwich might know, but I don't have her book to hand.)
We've got Trioedd Ynys Prydein - literally "the Triads of the Island of Britain", though in English they're usually known as "the Welsh Triads". They're a collection of lists of threes of things - not stories, but a catalogue of narrative references, possibly for bards to draw from. Arthur pokes through in places - there are clearly Arthurian tales that were known to these bards, but are lost to us. Suddenly we've got references to Arthur's queen, Gwenhwyfar (Guinevere), and various warriors of his court, and already we're seeing references to her being the cause of the Battle of Camlann, though possibly not in the way we see in later traditions.
We've got Culhwch ac Olwen, a Welsh story of Arthur's kinsman Culhwch who enlists Arthur's help in completing a series of quests, to win the hand of Olwen, daughter of the king of giants. Arthur's hall contains figures who are probably remnants of Celtic gods, and figures whose names are just plays on words. Gwenhwyfar is here, as are Kai (whom you might know from The Sword in the Stone), and Bedwyr/Bedivere, whom you might know from Monty Python and the Holy Grail. No Lancelot yet, no Merlin, no Tristan, though there's an Essyllt who's kinda-sorta-maybe the Isolde of the Tristan and Isolde tale.
A lot of these characters are referenced in these stories, but almost certainly known to audiences at the time. For every text we have, there are certainly plenty of stories that are lost to us - independent stories of these characters, and stories where they are connected to Arthur.
Then Geoffrey of Monmouth, a 12th century Welsh monk, wrote his Latin History of the Kings of Britain, which gave us an extended narrative of the career of Arthur. Guinevere and Mordred take up together, triggering the Battle of Camlann, a tangle that will center on Lancelot in later stories.
Geoffrey's History was a megahit. Latin was way more widely known than Welsh, so suddenly we had a full and rich Arthurian narrative that was linguistically accessible. The History inspired further works in Welsh, in English, in Latin, in French, and more.
This is all before the writing of any Arthurian sources that most modern readers will have ever heard of. This is centuries before Malory's Le Morte d'Arthur, which is centuries before Tennyson's Idylls of the King, or White's The Sword in the Stone, and so on.
My point. I had a point here, somewhere. Okay, I'm going to tell you my point, and then I'm going to admit I'm lying about my point.
My point is that nearly everything is a "later addition" to the story, because the story is a later addition to the story. We have hints and fragments, remnants of rich narrative traditions that are now mostly lost to us; fragments that, through the collaboration of countless authors across centuries, have grown up into the Arthurian mythos we know today.
Except that's kind of not my point, because while everything I'm saying is true, it's all in service of the argument that Lancelot being a later addition doesn't make him an invalid addition - just a continuation of a tradition of additions that have been going on since the beginning.
But, in writing this rant, I went to refresh myself on Lancelot's origins - because fuck, man, there is so much Arthur, and I haven't traditionally focused on Lancelot all that much myself. I'd remembered he's an independent French legendary hero who got soldered onto Arthur, like so many other elements. So I pulled him up on Wikipedia, and holy fuck, man.
Depending on which scholar you ask, he's maybe:
Llenlleawg Wyddel, one of Arthur's warriors from way back in Culhwch and Olwen
Llwch Llawwynnyawg, father of some of Arthur's warriors, again from Culhwch and Olwen, and thus possibly also the Irish god Lugh
Lleu Llaw Gyffes, a hero from the Mabinogion, another early collection of Welsh legends
Eliwlod, a nephew of Arthur's who shows up in the Triads
An Iranian hero bound up in the proposed Scythian/Sarmatian origin for Arthur (which was depicted, sloppily, in the 2004 film King Arthur)
A reference to an early Gothic tribe called Vinoviloth
Unguist, the son of a 6th-century Pictish king
Fraimbault de Lassay, an early French saint
Maelgwn, king of Gwynedd, one of the medieval kingdoms of Wales
Llaennog, father of a king of Elmet in the Brythonic Old North
and more
So yeah. "Lancelot is a fanfiction OC" is reductive, and completely misunderstands how Arthurian legend works, but also, depending on which scholar you believe, might not even be true.
People on this website will really mock anti-vaxxers and flat earthers for ignoring scientists and getting their alternative facts from facebook, and then turn around and insist they know more history than historians and more archaeology than archaeologists because they read an unsourced tumblr post once
93K notes
·
View notes
Text
What You’ll Learn in a Data Science Bootcamp: A Syllabus Breakdown
At a time when companies are so dependent on information, it is not an exaggeration to say that the job of a data analyst is essential. Data analysts are vital whether they report to a retail company to understand their customer behaviours or a hospital to understand how to treat its patients better by making sense out of their data insights. So what can one do on those with little or no background in data? The following guide will help you, even starting with zero, on how to become a data analyst.
What Does a Data Analyst Do?
It is good to know what a data analyst does before getting straight to the steps. A data analyst gathers, analyses and interprets data in order to aid organizations undertake problem solving and make sound decisions.
Key Responsibilities Include:
Collection and cleaning up of data
operative Trends and pattern analysis
Report and dashboard creation
Presenting clear solutions to laypeople teams
Consider a data analyst as a translator, one who makes confusing numbers tell stories that other individuals can be able to act on.
Step 1: Understand the Role and Assess Your Interest
Everyone fond of the numbers is not suited to do the data analysis. It takes curiosity, attention to details, and communication abilities.
Problem:Most novices believe that it is more concerned with coding or math, but pay insufficient attention to the storytelling part and critical thinking.
Solution: Start by reading job descriptions or talking to professionals. Ask yourself:
Is it that I like solving puzzles?
Do I get along or am I comfortable with spreadsheets or numbers?
Is my preference to get the solution based on data?
Real-life example: Sarah, a customer support rep, saw trends in the field of complaints and began to monitor it in Excel. She did not realize it at the time, but she was already engaging in this kind of basic data analysis.
Step 2: Learn the Basics of Data and Analytics
You don’t need a degree in statistics to start, but you do need foundational knowledge.
Core Areas to Learn:
Spreadsheets (Excel or Google Sheets): These are often the first tools used for data analysis.
Statistics and Math: Understand averages, medians, probability, and standard deviation.
Data Visualization: Learn how to create charts and graphs that make data easy to understand.
Basic SQL (Structured Query Language): This helps you access and retrieve data from databases.
Antithesis: Some argue that you need to master advanced programming languages first. But in reality, many data analysts begin with spreadsheets and work their way up.
Step 3: Learn a Data Analysis Tool or Language
Once you’ve mastered the basics, it’s time to get comfortable with one or more tools used in the field.
Commonly Used Tools:
SQL: For querying databases
Python or R: For advanced analysis and automation
Tableau or Power BI: For creating dashboards and visual reports
Practical Tip: Don’t try to learn everything at once. Choose one tool based on the kind of job you’re aiming for. If you're interested in marketing analysis, Excel and SQL might be enough to start. If you’re leaning towards finance or research, Python may be more useful.
Step 4: Work on Real Projects
The theoretical study is amazing, but the practice is what leads to development.
Problem: Most learners are helpless upon completion of courses: they have experience only.
Solution: Run your own project. For example:
Open government data analysis
Follow your own spending and start trending
Compare the house prices locally based on the available information provided by the government
Real-life example: John, a teacher who was transformed into a data analyst, will have opportunities to find patterns and causes of absence by relying on school attendance data. He worked in Excel and later was able to include Tableau to add visualizations. It turned into a powerful resume item during job applications.
Step 5: Build a Portfolio
Employers would like to know what you are capable of. Portfolio demonstrates your abilities in practice and helps to prove that you are ready to be hired.
What to Include:
The description of the project in brief consists of the following:
Tool and approaches employed
Visual aids such as charts or dashboard
Your convictions and conclusions
You are able to share a portfolio on your personal blog, LinkedIn, or GitHub. It is all a matter of clarity and confidence with which you can deliver your work.
Step 6: Practice Communication Skills
Becoming a data analyst is not merely all about numbers. You should communicate your results to those who may not be conversant with data in any way.
Key Skills to Develop:
Clearly formulated writing
Creating great slide decks
Giving a secure presentation during meetings
Antithesis: Some others suppose that powerful technical proficiency is a guarantee on its own. Nevertheless, analysts that are somehow incompetent in communicating their results will not have much impact.
Step 7: Apply for Entry-Level Roles or Internships
With a few solid projects and basic tools under your belt, you’re ready to start applying. Look for roles like:
Junior Data Analyst
Reporting Analyst
Business Intelligence Intern
Tailor your resume to highlight practical skills and include links to your portfolio.
Final Thoughts
Turning into a data analyst is not a race. You do not require being a mathematical genius or a coding master to start. Curiosity, an ability to learn and patience to develop skills gradually are also needed.
Summary Checklist:
Understand the role
master fundamentals (spreadsheet, statistics, SQL)
Select any one analysis tool
Carry out real world projects
Create a portfolio
Practice communication
Take entry level jobs
It may seem overwhelming at first, but many successful analysts started just where you are—curious, uncertain, but ready to learn.
0 notes
Text
Yes, I Got a Cloud Server for Free Forever Here’s How You Can Too.
Let me tell you a little secret: I'm running a cloud server right now—for zero dollars. No tricks, no expired trials, no surprise bills. Just forever free. And the best part? You can do it too.
This isn’t one of those “free for 12 months” offers that quietly auto-bills you after a year. This is 100% free forever, and I’ve been using it to host websites, run experiments, and even power a personal VPN.
Here's how I did it—and how you can get your own cloud server for free too.

🧠 First, Why Would You Even Want a Cloud Server? If you’re a dev, student, entrepreneur, or just someone who wants to mess around with tech, a cloud server is basically your Swiss Army knife. You can:
Host your own blog or portfolio
Deploy web apps
Run bots or automation scripts
Set up a secure VPN
Tinker with Docker, Node.js, Python, and other cool tools
Learn cloud infrastructure (and impress your next job interviewer)
But traditionally, cloud servers cost money. Not a lot—but still enough to be annoying if you’re bootstrapping.
🧨 The Hack: Free-Tier Cloud Servers (Yes, They’re Legit) Here’s the part most people don’t realize: some major cloud providers offer "always free" tiers. These aren’t trials. They’re permanent free resources designed to bring developers into their ecosystem.
Let me break down the best ones:
🟢 Oracle Cloud - The Real MVP What You Get (Always Free):
2 Arm-based virtual machines (VMs)
1 GB RAM each, up to 4 vCPUs
200 GB storage
10 TB/month of data transfer
👉 This is what I'm using. It’s not just a toy—this thing can run websites, apps, and even a Minecraft server (with some optimization). It’s shockingly good for something that costs nothing.
Pro Tip: Choose the Ampere A1 (Arm) VM when signing up. They're the magic machines that stay free forever.
🔵 Google Cloud Free Tier 1 f1-micro VM (in select regions)
30 GB HDD + 5 GB snapshot storage
1 GB outbound traffic
It’s more limited, but solid if you want to dip your toes into Google’s ecosystem. Great for small side projects or learning.
🟠 Amazon AWS Free Tier 750 hours/month of a t2.micro or t3.micro EC2 instance
5 GB S3 storage
Other bonuses like Lambda and DynamoDB
⚠️ This one’s only free for the first 12 months, so set a calendar reminder unless you want to wake up to a surprise bill.
Honorable Mentions (For Web Devs & Hobby Projects) Flyio – Run full-stack apps with generous free bandwidth
Render / Railway – Deploy static sites, APIs, and databases with ease
GitHub Student Pack – If you’re a student, you unlock a TON of free cloud goodies
⚠️ A Few Quick Warnings Before you go server-crazy:
Stick to free-tier specs (e.g. Oracle’s Ampere A1, Google’s f1-micro)
Watch bandwidth usage—10 TB sounds like a lot, until it isn’t
Avoid regions that aren’t free (yes, it matters where your VM is located)
Set up billing alerts or hard limits if the provider allows it
So… What Can You Actually Do With a Free Server? Here’s what I use mine for:
✅ Hosting my personal website (no ads, no downtime) ✅ Running a WireGuard VPN to stay safe on public Wi-Fi ✅ Testing code 24/7 without killing my laptop ✅ Hosting bots for Discord and Telegram ✅ Learning Linux, Docker, and server security
Basically, it’s my own little lab in the cloud—and I didn’t pay a dime for it.
Final Thoughts: Cloud Power in Your Pocket (For Free) In a world where subscriptions are everywhere and everything feels like a money grab, it's refreshing to find real value that doesn’t cost you anything. These cloud free tiers are hidden gems—quietly sitting there while most people assume you need a credit card and a corporate budget to get started.
So go ahead. Spin up your own free cloud server. Learn. Build. Break things. And have fun doing it—on someone else’s infrastructure.
🔗 Want to try it?
Oracle Cloud Free Tier
Google Cloud Free Tier
AWS Free Tier
1 note
·
View note
Text
How to Build a Portfolio That Lands You a Tech Job

In the tech world where all things are competitive, the resume tells the employer, "This is what I have done," while the portfolio demonstrates what a person can do. For trainers, designers, data scientists, and cybersecurity professionals, the portfolio is often the single most important tool to project their skills, passion, and problem-solving ability. If you've got a portfolio for presentation, then consider that your proof in the trenches, your display, and the single most important way into that dream tech job.
If you're wondering how to build a portfolio that lands you a tech job, you're asking the right question. Employers in tech want to see practical application of skills, not just certifications. Your portfolio is your opportunity to shine, tell your story, and differentiate yourself in a crowded market.
Why a Portfolio is Essential for Tech Jobs:
Demonstrates Practical Skills:While your resume lists your skills, a portfolio provides evidence of your coding, designing, analysis, or security skills.
Shows Problem-Solving Ability: Problems or experiences in your portfolio will demonstrate your way of dealing with problems and how you find solutions.
Reflects Your Passion: Good personal projects show someone really wants to work in that area.
Highlights Creativity & Uniqueness: It acts as your advertisement for your style, creativity, and particular niche interests.
Validates Learning: If you've taken in-demand programming courses or Data Science courses in Ahmedabad, your portfolio validates the practical application of that learning.
Key Components of a Compelling Tech Portfolio:
A strong portfolio is not a roulette of put-together projects. Instead, it is a story of your capabilities.
1. Quality Over Quantity:
Concentrate on a handful of about 3-5, high-quality projects that are well documented as opposed to several partially done projects. Choose projects that adequately showcase different skills as well as a deeper understanding of those skills.
2. Diverse Project Types:
A mix of personal projects, coursework-related assignments (if they carry some weight), and open-source contributions is needed.
For Developers: web app, mobile app, command-line tools, API integrations.
For Data Scientists: Notebooks for scrubbing and analyzing data, implementations for machine learning models, interactive dashboards.
For Designers: UI/UX case studies, mockups, prototypes, graphic design.
For Cybersecurity: Home lab setup, penetration testing (ethical) reports, security tools development.
3. Clear Documentation for Each Project::
Problem: What problem does your project try to solve?
Solution: How did you go about it? What technologies did you use (Python, JavaScript, Java)? What was your architecture?
Learnings: What challenges did you face, and what did you learn from them? This is reflection and growth.
Live Demos/Screenshots/Videos: Provide links to live deployments, clear screenshots, or short video walkthroughs.
4. Use GitHub (or similar platforms):
For developers, a well-organized GitHub profile is your primary portfolio. Ensure repositories are clean, code is commented, and README files are comprehensive. It shows version control proficiency.
5. Create a Professional Portfolio Website:
This acts as your central hub. It doesn't need to be fancy, but it should be clean, easy to navigate, and clearly present your best work. Use it to link to your GitHub, LinkedIn, and any live demos.
Actionable Steps to Build Your Portfolio:
Start Small, But Start Now: Do not wait until you have learned everything. Start working on basic projects and build on your skills while you keep on going.
Solve a Real Problem: Think of problems you couple of might be facing yourself or someone you know and try to solve them with some coding or design work. Usually, these projects feel more engaging and meaningful.
Contribute to Open Source: Give it a try, maybe contribute to an open-source project. It establishes that you function as a team and can work with an existing codebase.
Participate in Hackathons/Competitions: Such events are good for rapid skill-building and also building suitably impressive projects under pressure.
Seek Feedback: Ask peers, mentors, or instructors (e.g., from your computer coaching in Ahmedabad) to provide you with constructive criticisms.
Quantify Your Impact: Whenever possible, quantify your impact to the extent possible: describe the results of your projects with numerical values (e.g., "reduced loading time by 20%", "analyzed one million data points").
What Employers Look For:
Beyond technical skills, employers assess:
Clean, Readable Code/Work: Shows attention to detail and professionalism.
Problem-Solving Process: How you approach challenges.
Passion & Initiative: Personal projects indicate a genuine interest.
Ability to Learn: Demonstrated growth through project iterations.
Communication: How well you explain your work.
Your portfolio is your story in action. Invest time and effort into curating a compelling one, and it will undoubtedly become your most powerful asset in landing that tech job.
Contact us
Location: Bopal & Iskcon-Ambli in Ahmedabad, Gujarat
Call now on +91 9825618292
Visit Our Website: http://tccicomputercoaching.com/
#TechPortfolio#JobSearch#TechJobs#CareerAdvice#DeveloperLife#DataScience#WebDev#Cybersecurity#JobHunting#TCCIComputerCoaching
0 notes
Text

How to Start a Career in Data Analytics Without a Tech Background.
Let’s be honest—"data analytics" sounds like something only coders and spreadsheet wizards can do, right?
But here’s the truth: you don’t need to be a tech genius to start a career in data analytics. In fact, some of the best data analysts come from fields like marketing, finance, education, or even hospitality. What they all have in common? A curiosity to understand data and a willingness to learn.
This essay is for you if you've ever wondered, "I like solving problems, but I don't know where to start."
🧠 What Is Data Analytics, Really?
Think of data analytics as detective work with numbers. Businesses generate tons of data—sales numbers, website clicks, customer feedback—and they need someone to find the patterns, answer questions, and help them make better decisions.
A data analyst’s job is to: Collect and clean data Analyze trends Create reports and dashboards Help teams make smarter choices No complex coding needed to start—just clear thinking, basic tools, and some practice.
🌱 Step-by-Step Guide to Get Started Without a Tech Background
Start with the Mindset, Not the Tools First, believe this: you belong in data. Don’t let jargon intimidate you. You don’t need a computer science degree. What you do need is:
Curiosity Problem-solving skill A love for learning That’s your foundation.
Learn the Basics (One Step at a Time) Start small. You don’t need to jump into Python or SQL on Day 1.
Begin with:
Excel/Google Sheets – Learn formulas, pivot tables, basic charts.
Data literacy – Understand terms like KPI, metric, dashboard, etc.
Free courses – Try YouTube tutorials or beginner courses on platforms like Coursera, Udemy, or LinkedIn Learning.
📌 Tip: Try analyzing your own budget or workout data to practice.
Master Key Tools Slowly Once you’re comfortable, move on to the key tools data analysts use:
Tool Why Learn It? Excel Industry standard for data cleaning SQL Helps you pull data from databases Power BI / Tableau Used for creating visual reports and dashboards Python (optional) Helpful, but not required initially
Don’t try to learn everything at once—pick one and stick with it until you're comfortable.
Work on Real-Life Projects You don’t need a job to get experience. Use free datasets from sites like:
Kaggle.com Data.gov OurWorldinData.org
Start a project like: Analyzing COVID data in your region Creating a dashboard of your expenses Studying trends in Netflix shows or YouTube videos
Then write about your process on LinkedIn or Medium. It shows initiative and builds your portfolio.
Get Certified (Optional but Helpful) Certifications can give you a confidence boost and look great on a resume. Look into:
Google Data Analytics Certificate Microsoft Power BI Certification Coursera / Udemy beginner courses
They’re not required, but they help you stand out.
Apply for Entry-Level Roles (Even if You Don’t Tick Every Box) You don’t need to meet 100% of the job description to apply.
Look for roles like:
Junior Data Analyst Business Analyst Reporting Analyst Operations Analyst
Highlight your soft skills: communication, problem-solving, and attention to detail. Show how you’re learning the tools. That matters more than a perfect résumé.
💬 Real Talk: What Makes a Good Data Analyst (That Has Nothing to Do With Tech)? You ask “why” a lot
You enjoy making sense of chaos You’re patient with details You like telling stories with numbers Sound like you? Then you're already halfway there.
🎯 Final Words Starting a data analytics career without a tech background isn't just possible—it’s happening every day. With the right mindset, consistent effort, and a little curiosity, you can absolutely break in.
And remember: everyone was a beginner once.
If you’re ready to take the first step, our Data Analytics program at Ntech Global Solutions is built for career changers just like you. We teach you real-world skills, not just theory—so you can go from “I don’t know where to start” to “I got the job!”
#data analytics#data analyst course in delhi#data analyst training#code#python#programming#sql#excel#power bi#tableau
1 note
·
View note