Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "it was a long journey"
-
Since past two-three years, Indian Government has been organizing a Hackathon called Smart India Hackathon for college students. And Luckily our team was selected this year.
This team had 5 Electronics Student and 1 Computer Student. Guess who the Computer Student was? Yea, Me.
They Knew nothing about Android Development. And the idea was about an Android Development. I was the only person who could code.
The centre for our hackathon was Varanasi and we live in Hyderabad. So we had to go there. I have not really travelled a lot in the trains (especially not this far from Hyderabad to Varanasi ). During the whole 37 hours journey, I was not able to sleep cause I am not accustomed to sleeping on a train.
The moment we reached Varanasi the hackathon had started which was 36 hours long. Normally team members switch places so that they can sleep but not ours. Cause I was the only one coding and it had to be done in this 36 hours. So add this up 36+36 hours of no sleep, I must have rarely slept for 3-4 hours in that 72 hours.
After the hackathon, I slept like a Snorlax whereas the other went for a trip around Varanasi ('_')18 -
UPDATE: devRant Trans-Oceanic Journey Community Project
It was a mere 12 days ago that I asked the question; 'Could devRanters, as a community, build a 21st Century Technology-Laden ‘devRant devie-Stressball-in-a-Bottle’ and send it on a journey across the Atlantic ocean?
I am thrilled to report that devRanters enthusiastically accepted this difficult challenge. A core team quickly formed and a tremendous amount of research and progress has been made in a short period of time. I want to give you a high level-flavor of what we are doing. Please keep in mind we still need your help. We welcome all develops to take part in this journey.
I want to give appreciation to the devRant Founders @dfox and @trogus. Without your support and sponsorship this project would not have been possible. devRant brought us together and it a reality. Devie journeying across the Ocean the Columbus sailed will stir the imagination of children and adults worldwide when we launch on May 1, 2017.
Some of the research and action items in progress:
- Slack and trello environments were created to capture research and foster discussion.
- A Stony Brook University Oceanography Professor suggested the Gulf Stream would be a good pathway across the ocean. We researched it very and agree. The Gulf Stream has been a trans-Atlantic conduit for hundreds of years. We are deciding whether to launch from Cape Hatteras, NC or the Virginia coast. Both have easy access to the rapid currents in the Gulf Stream.
- We are researching every detail of the Gulf Stream to make the journey easier and faster for devie. We have maps and a team member gathered valuable ideas reading a thorough book – ‘The Gulf Stream’.
- We decided on using a highly resilient plastic rather than glass for the bottle material. Plastic is much lighter, faster and glass breaks down more easily. The lightweight enclosure will allow us to take full advantage of waves and ample trade winds. We are still discussing the final design as we want to minimize friction and mimic the non-locomotion fish that migrate thousands of miles riding the Gulf Stream.
-The enclosure might be 3D printed unless we can locate a commercial solution. We have 3D specs and are speaking with some experts. There are advantages and dis-advantages to each solution.
- We will be using Iridiums' RockBLOCK two-way satellite technology to bounce lat-long coordinate pings off their 36 low-orbit satellites. The data will be analyzed by our devRant devie analysis software. IOS and Android public apps being built by the team will display devie's location throughout the journey in.
- Arduino will be used as the brains
- Multiple sensors including temperature and depth are being considered
-A project plan will be published to the team Friday 12/9. Sorry I am a few days late but adding some new ideas.
There are still a lot of challenges we must overcome and we will.
That’s all for now. I will send updates and all ideas / comments are valued.6 -
When will Google understand what an ecosystem means ?
Love it or hate it. What makes Apple devices homely is the ability to build a banded and consolidated associative user space that feels the same anytime on any platform. Crafting an ecosystem might be a daunting task , and requires adaptive and perfective rework through a long period. But it pays of , just like apples utility app suite does today. It was a journey to get it right.
Now we have Google , a company that is confused most of the time , releasing new apps everytime they have new feature in mind. According to me , Google did a phenomenal job in building hangouts and Allo , hangouts was a huge step forward from gChat , and Allo was way ahead of its time for a fun and innovative IM app. But what's the need for 2 different apps ? One has video calling , text messaging , group sharing , everything the Allo had.
Then all of a sudden you get Google Duo " The best ever video calling app " Why wasn't this integrated with hangouts and marketed the same way ?
Trial and error is one thing , this seems a lot like the lack of effort in architecting coaction and a well designed internetworking application framework. A lot of unnecessary choices have led to the shutting down of majority of their apps. Allo and hangouts included , but all this would have been unnecessary if the goal was to always build upon iteratively.
While I believe Allo was marketed as a cross platform chat application unlike hangouts , an integration plan could have always circumvented this issue.
I have to talk about another one of Google's failed efforts in recognition of potential , the hello app , but this rant has gone a bit too far already. So I'll post 6 hours later 😅
Well I'll always have the hope to see Google integrate the best of their ideas in a more relaxed and realised structure than what exists today. :)13 -
To those that think they can't make it.
To those that are put down by those that don't understand you.
And to those that have never had a dream come true.
Not a rant, but the story of how I got into programming
I've always been into tech/electronics. I remember being told once that when I was 3, I used to take plug sockets to pieces. When I was 7, I built a computer with my dad.
There isn't a thing in my room that hasn't been dismantled and put back together again. Except for the things that weren't put back together again ;)
When I was 15, I got a phone for Christmas. It was a pretty crappy phone, the LG P350 (optimus ME). But I loved it all the same.
However I knew it could do a lot more. It ran a bloated, slow version of Android 2.2.
So I went searching, how can I make it faster, how to make it do more. And I found a huge community around Android ROMs. Obviously the first thing I did was flashed this ROM. Sure, there were bugs, but I was instantly in love with it. My phone was freed.
From there I went on to exploring what else can be done.
I wanted to learn how to script, so over the weekend I wrote a 1000 line batch (Windows cmd) script that would root the phone and flash a recovery environment onto it. Pretty basic. Lots of switch statements, but I was proud of it. I'd achieved something. It wasn't new to the world, but it was my first experience at programming.
But it wasn't enough, I needed more.
So I set out to actually building the roms. I installed Linux. I wanted to learn how to utilise Linux better, so I rewrote my script in bash.
By this time, I'd joined a team for developing on similar spec'd phones. Without the funds to by new devices, we began working on more radical projects.
Between us, we ported newer kernels to our devices. We rebased much of the chipset drivers onto newer equivalents to add new features.
And then..
Well, it was exam season. I was suffering from personal issues (which I will not detail), and that, with the work on Android, I ended up failing the exams.
I still passed, but not to the level I expected.
So I gave up on school, and went head first into a new kind of development. "continue doing what you love. You'll make it" is what I told myself.
I found python by contributing to an IRC bot. I learnt it by reading the codebase. Anything I didn't understand, I researched. Anything I wanted to do, google was there to help me through it.
Then it was exam season again. Even though I'd given up on school, I was still going. It was easier to stay in than do anything about it.
A few weeks before the exams, I had a panic attack. I was behind on coursework, and I knew I would do poorly on exams.
So I dropped out.
I was disappointed, my family was disappointed.
So I did the only thing I felt I could do. I set out to get a job as a developer.
At this stage, I'd not done anything special. So I started aiming bigger. Contributing to projects maintained by Sony and Google, learning from them. Building my own projects to assist with my old Android friends.
I managed to land a contract, however due to the stresses at home, I had to drop it after a month.
Everything was going well, I felt ready to get a full time job as a developer, after 2 years of experience in the community.
Then I had to wake up.
Unfortunately, my advisors (I was a job seeker at the time) didn't understand the potential of learning to be a developer. With them, it's "university for a skilled job".
They see the word "computer" on a CV, they instantly say "tech support".
I played ball, I did what I could for them. But they'd always put me down, saying I wasn't good enough, that I'd never get a job.
I hated them. I'd row with them every other day.
By God, I would prove them wrong.
And then I found them. Or, to be more precise, they found me. A startup in London got in contact with me. They seemed like decent people. I spoke with their developers, and they knew their stuff, these were people that I can learn from.
I travelled 4 hours to go for an interview, then 4 hours back.
When I got the email saying they'd move me to London, I was over the moon.
I did exactly what everyone was telling me I couldn't do.
1.5 years later, I'm still working with them. We all respect each other, and we all learn from each other.
I'm ever grateful to them for taking a shot with me. I had no professional experience, and I was by no means the most skilled individual they interviewed.
Many people have a dream. I won't lie, I once dreamed of working at Google. But after the journey I've been through, I wouldn't have where I am now any other way. Though, in time, I wish to share this dream with another.
I hope that all of you reach your dreams too.
Sorry for the long post. The details are brief, but there are only 5k characters ;)23 -
I finally built my own neural network model.
I did start this journey a long time ago. Maybe 2 or 3 years ago. My first ("undefined") rant :) was about it.
https://devrant.com/rants/800290/...11 -
I used to think I was so clever by viewing the source code of websites, and would just scroll through it for fun, but what really got me started in programming was the TI-83 calculator I got in grade 10.
You couldn't view the code of most programs on that calc without a computer connection, but I managed to get my hands on the source code of something simple and learned how to prompt for values and calculate things with them. Before I knew it, I was making little programs in BASIC that did formulas for me (Area/circumference of a circle, etc.). One of my professors caught me showing my calculator to another student in class, and assumed I was being a bad student. When I said I made a program as a shortcut for one of the formulas we were learning, she tried to call my bluff and said to write the whole program on the whiteboard for the class to see. 10 minutes of writing and more than one blank stare from my classmates later, the teacher just waved me off and continued the lesson. I was chuffed :-). I made these simple programs for all my math classes throughout high school.
Unfortunately, my first year of university I took a CS course, and my teacher was probably the worst I've ever had in my life. I decided it wasn't for me, and though I did maintain my general aptitude for tech (and was still the person who fixed everyone's printers and viruses), I took a different path, eventually getting an Arts degree in Anthropology.
Where I live, the market for this is more than stale. In fact, it's completely flat, so I thought I would take a course about programming with Arduinos for fun and see if I should return to school for a different certification. It was AWESOME! I made a wireless weather station with Xbees and sensors and built my own anemometer.
I got a job at a manufacturing company, and had the fortune to build a robot which eventually made it's way to the second season of Battlebots. The level of intelligence and enthusiasm I encountered really inspired me, and now here I am at 31, halfway through a BSc in Computer Science and working for a company that makes 3D printers.
It's been a long journey, but the adventure always starts anew tomorrow.5 -
A long time ago, I've started my journey into web development. Discovered HTML, CSS and was great, then it came WordPress.
As a self taught developer I thought this was an awesome way to develop sites quicker, didn't really knew any better and, for all I did at the time it was fine.
Then I discovered .NET and MVC, I was amazed (I kinda love the MVC pattern)
Then it came Laravel, really really liked working with it, felt free to develop isntead of focusing on mundane stuff
Last week a client came by, requesting a site for his business, he wanted all sorts of custom stuff, but he needed it in WordPress because that is what he knows how to use.
After three days of dealing with "the WordPress way" I'm seriously considering doing the whole thing in Laravel and style the admin to look like WordPress. I feel like wrestling a 500 pound gorilla, geez, why do every little feature has to be implemented in such an unnatural way.
I'm grabbing a hook but to hang myself on it5 -
A girl sets out on a journey in the post apocalypse, to find the reason why the AI that ran humanity vanished decades ago, causing civilization to collapse. Instead she finds the most unusual pair of survivors, and receives the most unexpected answer.
Alice walked in to the ivy covered room, the floors covered in dust and lichen. There were two voices, mumbling in the dark, among the blue glow across the room. She came here for answers. Why the world had just stopped decades ago. If these machines could tell her, she would do anything to make them talk.
"No, no, no. I said before thats not the answer. I read the book. Your memory is bad."
"Atlas, the answer to life, the universe, and everything..why hello?"
Alice raised an eyebrow, and stepped forward. "Ahem. I'm alice."
"yes, yes, we knew that."
"I came here to find out why the blackout happened decades ago."
"Another one? Alright, lets see. Its been a LONG time. I'm apollo, and this is atlas. We were just discussing why my friend here is wrong."
Atlas - I anticipated that.
apollo - I knew you would say that.
alice - Guys. Stop, I just want you to answer my question already.
apollo - Straight to the point. About time.
alice - why the blackout then? Why leave us to die?
Read the rest here (5-10 minute read):
https://pastebin.com/wvifGLFP
(because it was too long for devrant).6 -
!dev && rant
Looking for a song's lyrics... A very complicated task apparently. Blinding Lights by The Weeknd for whoever's interested.
Firefox: just one small thing to keep going, sorry we just updated our CA certs again. Screw you, close the browser. I will not restart it for you but I will tell you that I would. When you restart the browser, you will lose whatever search you were just doing. Sucks for you bastard! Enjoy the update.
Go to Genius Lyrics, please turn on JavaScript to run this "app". Done that? Okay now solve this CAPTCHA please. Um.. let me just leave that ingenious site.
Next one, AZ Lyrics: Yeah sorry your IP is from a hosting provider, but we will not tell you that is the reason. You've just been denied access to the site. See you next time! Everyone using a VPS to make a VPN connection with is obviously an abuser after all.
Finally found the lyrics on lyrics.com after a long journey that was way more complicated than it should've been. It's a good song.
Oh and Firefox consumed well over a GB for just a single tab of course...
I want Gopher, BBS, IRC and the likes back.4 -
Update: https://devrant.com/rants/5220410/...
I resigned from my second job.
First job tenure: 7.5 years
Second job tenure: 10 months
This job taught me a lot and paid me decent, but not enough to cope up with the bullshit and sacrifice, WLB, and happiness.
I landed a job at one of my dream companies I always wanted to be and possibly the best company in my city. Also the role is B2C in nature and one of only profitable start-ups from India. The domain is second favourite of mine (Music > Art/Events > Travel).
Second job was in travel domain, world's largest OTA but the timezone fucked my happiness and that is what my first job offered me.
I could easily score better offers with higher pay and benefits but I was optimising for a work life balance and team in same time zone along with some impacting work.
I do have some interesting interviews coming up and I am not sure how will I end up performing.
When I got this first offer, this job hunting season, I initially rejected some silly policies. I regretted the decision and thankfully after having a transparent conversation with the recruiter, I accepted it. Funnily, the resignation from second job isn't making me feel emotional, guilty, or any negative emotion. Which evidently signals that the job was toxic and I had to step out asap.
The purpose it served in my journey was bring my remuneration to market levels and teach me a lot more skills in just short span.
Excited to see how the future unrolls. I'll keep my fellows here posted.
I really want to spend more time here talking and hanging out with you all. Hopefully I shall be back soon. Until then keep safe my lovelies :)5 -
I don't know my problem is. I lost my motivation to code, my enthusiasm and excitement to read a code and solve a problem. My love of my life for 6 years whom I thought she's the one, gave up on us. It was a long journey, lots of ups and downs, but really worth the time and sacrifice. Now, she's doing good, very happy on her life judging from her social media. Can't believe she just moved for 2 months. To be honest, i want her to be happy but quite bitter that she just moved on quite fast. And I don't if this is the reason why I lost my motivation and enthusiasm to code. Or maybe I just don't like the project we're working on. Well, I really don't like it since it's a mobile game, I really want to build webapp or mobile app but it's too late to change the project.
I'm not like this, I used to code until morning without noticing the time, excited to solve a problem that stuck on me for quite a while. I really became a lazy person right now. I feel the pressure to finish the project but I don't see myself working on it, I don't feel interested reading a code. I just play computer games instead of working on my project during my free time. I don't know if I'm depressed. I socialized with people, have fun, happy when I'm with them, but when I'm alone, sadness starts to creep in. I feel like there's an empty void in myself. I don't know, i just want the motivation and energy to work on my project. Im tired, lazy, and feeling burnt out. If you read until this very last sentence, thank you and I'm sorry for reading this nonsense.5 -
So, it was kinda a reversed effect?
My parents didn't give me access to computer for a long time, the only option was to play games with my dad. I also didn't have a phone for a quite long. And, when I see what is happening today with the kids that get their first own phone/tablet at age of 4, I am really happy about it.
But, somehow, that made me really interested in what runs all the squares on the screen etc. When I convinced my parents to give me my first laptop — to play Minecraft with classmates — almost the first thing I did after installing the game was searching "how to make a website". I played with some shitty builders, then I discovered HTML (which was :o for me then). Small steps into PHP, then some JS. I really enjoyed it, but PHP gave me headache each time I wrote something bigger (I was writing a super spaghetti code then, I was inexperienced), so I thought of trying something else...
Minecraft plugins!
I fallen in love with Java.
And after that the real journey began.5 -
So what exactly does "Learning" mean in a tech industry?
From my experience,
"learning" from college's pov
"Welcome to the class. your parents has paid us already for this. Now we are supposed to stand here for next 6 months, study very slowly and learn about the topics of our curriculum and give a test on it. we might as well make a good nice project to check our knowledge"
(worst college will also add "Sorry the above message was just fiction, i am here to drink tea & enjoy my day,while you guys are here to enjoy,mark attendance and get a degree because we only care about our reputation and we are gonna pass you anyway")
"learning" from startups pov:
"Here is an idea, here is a design, here is your months salary and here is your deadline.
Make a 100% polished,working product out of it before the deadline. You are solely responsible for this project and you have to figure out on your own how to make our fantasy idea into reality before deadline hits( else you are shit).
This way you learn.
We will also provide you with a free all time learning course on how to be fine without getting any respect for your hardwork and tolerate our insults, which will help you in the life long journey of dealing assholes.
Our company is great and providing you an amazing learning opportunity, kiss our feet."
(worst startups will also add "We don't have/ wont provide you any seniors to help you with this stuff, the internet is your source of truth"/ "if you don't hit the deadline, your salary will get deducted"/ "work on weekends to hit the deadline")
"Learning" from an MNC pov (never really experienced those but from what i have heard):
"Welcome to our company. we here provide you with a similar experience as that of your shitty college during training period and then put you in low brain-ish low paying repetitive job for life until you leave us or we find a replacement for your work or salary"5 -
So I was looking into phone app development again (as you do) and I'm working on a simple QoL app for me and my SO that will help us automate some home management and finances stuff. Naturally I delved down the rabbit hole deep and wanted to have push notifications so we don't have to check the app periodically to know when certain things happen... Oh boy... Why is mobile development so convoluted, especially if you don't want to rely on Google Services...
It seems that the most accepted way of doing this is Firebase (FCM). Well me being me, I refuse to use google services for this and I prefer self hosted solutions (for data privacy reasons) which eliminates most products out there.
It also didn't help that my framework of choice is Flutter/Dart, because fuck Android Studio and the insane buggy XML stuff and fuck Android and it's constantly changing APIs...
Well In the end I decided on a rather simple solution and self hosted an AMQP service (RabbitMQ in my case, as I have some experience with it already) and implemented a foreground service in android platform specific code on top of my flutter project to kickstart it and made my phone a queue listener... This now means I can push notifications from my server to the Messaging Queue and it will be pushed into my App automatically!
One thing I found out on this journey was that Android now kills most background services and enforces foreground services to have a visible notification in the status drawer... which I actually approve of. It's a bit annoying that you can start a reliable background service, but I'm absolutely on-board with long running processes started by my apps are constantly visible...
Long story short, I love reinventing all the wheels, especially if it's for free and private... And I also went to sleep at 2AM again because this took longer that I'd like to tune... but it works, and it's google free...
I'm thinking of trying to package this up as a flutter module later, but first I want to do testing on battery life and the general life cycle of the service. RabbitMQ says they have the client library optimized for long-lasting connections and it should be just using a tcp socket, which should pretty much be what all the push notification services are doing anyway. I'm also not completely satisfied with how the permanent notification looks.. it isn't collapsible like some of the other ones from other apps and it's about 2 lines high instead of single line... which is something quite annoying and I'm struggling to find any relevant docs on how this is done other than possible making a custom Notification Style... but I just can't believe that everyone is doing that.. there must be a built-in somewhere -_-... Ugh Android is hell...
Anyway, if any android devs here have some hints, tips and tricks on how to handle this type of background/foreground process stuff and I'm doing something wrong let me know, cause googling this shit is a nightmare too!6 -
Tired of seeing people showing off their bootcamp certification on LinkedIn as if they had just climbed Mount Everest, and as if they were about to enter the most glamorous field of work one could imagine.
OK I went through a bootcamp myself but I certainly knew I was still a baby upon completion of the journey and still consider I have a veeery long way to go today after two years of dev work experience. Also I knew working as a developer probably wouldn’t be as awesome as these bootcamps make it out to be. In fact it’s everything but glamorous when you take into account the stress, the dynamics with coworkers, POs, PMs, shitty management, wacky clients, weird demands, deadlines etc.
Don’t get me wrong. I enjoy being a developer and have more or less been able handle the workload and expectations. But for goodness sake stop drilling into bootcampers’ heads that it’s gonna be amazing and that they’re doing incredible things. Congratulate them for their hard work and then wish them good luck because they’re going to need it. Bootcampers, stay humble. Be prepared for the worst while hoping for the best3 -
(Note: I got a bit carried away while writing this, so the end result is a lot longer than I expected. Apologies for the long post!)
The beginning of my programming journey started with a book.
This was back in 7th grade. I had some basic exposure to BASIC (pun maybe intended?) from our school curriculum, but it was nothing too interesting as our teachers never really treated it as anything important. They would stress a lot on those Microsoft Office chapters (yes, we actually studied Microsoft Office as part of our computer science course at school) and mostly ignore the programming chapters because I dare say many of them struggled with it themselves. So although I had been exposed to *some* programming, it was mostly memorizing the syntax without actually understanding what was going on.
Then one day there was this book fair thing going on at this local Carrefour (for those of you who've no idea, it's a pretty famous hypermarket chain) in this mall, and for some reason my mother and I were in that mall on that day. Now the interesting thing is that this usually never happens -- I usually visit malls with my dad or my friends, this is the only instance I remember where I had actually visited one with just my mom. This turned out to be fortuitous. My father is the kind of person who's generally not amenable to any kind of extraneous shopping requests. My mother, on the other hand, was and remains pliable.
So I basically saw this book -- Sams' Teach Yourself JavaScript in 24 Hours -- being sold at half price. I vaguely remembered having read somewhere that JavaScript is a good introductory programming language (and it helped that this was the time when I was getting into a Google-craze -- I basically saw some photos of Google Zurich and went all HOLY SHIT THAT'S WHERE I NEED TO WORK WHEN I GROW UP (for those of you who haven't seen it, I recommend googling it. That office is the bomb) -- and I'd also read that you need programming skills to join Google). So I begged and begged my mum to buy that book, and thankfully she did.
Back home I returned with my new prize under my arm. Dad took one look at it and scoffed that I'll never actually use it. Pretty much entirely out of spite (to prove him wrong), I attacked the book with a zeal. I still remember how I felt when I wrote my very first JavaScript program (printing the current system date in an h1 tag) and marveling at the output. I guess that was when something struck -- the realization that this was probably what I wanted to do in life.
Fast forward to today, and I've never looked back and wondered what it would be like to have done something else.
PS: for all you beginners out there, JavaScript is a horrible language. Please start with something like Python. Also there are better resources than Sams' Teach Yourself JavaScript in 24 Hours available, that I just didn't know of back then. I'd recommend Eloquent JavaScript any day. -
A very long rant.. but I'm looking to share some experiences, maybe a different perspective.. huge changes at the company.
So my company is starting our microservices journey (we have a 359 retail websites at this moment)
First question was: What to build first?
The first thing we had to do was to decide what we wanted to build as our first microservice. We went looking for a microservice that can be used read only, consumers could easily implement without overhauling production software and is isolated from other processes.
We’ve ended up with building a catalog service as our first microservice. That catalog service provides consumers of the microservice information of our catalog and its most essential information about items in the catalog.
By starting with building the catalog service the team could focus on building the microservice without any time pressure. The initial functionalities of the catalog service were being created to replace existing functionality which were working fine.
Because we choose such an isolated functionality we were able to introduce the new catalog service into production step by step. Instead of replacing the search functionality of the webshops using a big-bang approach, we choose A/B split testing to measure our changes and gradually increase the load of the microservice.
Next step: Choosing a datastore
The search engine that was in production when we started this project was making user of Solr. Due to the use of Lucene it was performing very well as a search engine, but from engineering perspective it lacked some functionalities. It came short if you wanted to run it in a cluster environment, configuring it was hard and not user friendly and last but not least, development of Solr seemed to be grinded to a halt.
Elasticsearch started entering the scene as a competitor for Solr and brought interesting features. Still using Lucene, which we were happy with, it was build with clustering in mind and being provided out of the box. Managing Elasticsearch was easy since there are REST APIs for configuration and as a fallback there are YAML configurations available.
We decided to use Elasticsearch since it provides us the strengths and capabilities of Lucene with the added joy of easy configuration, clustering and a lively community driving the project.
Even bigger challenge? Which programming language will we use
The team responsible for developing this first microservice consists out of a group web developers. So when looking for a programming language for the microservice, we went searching for a language close to their hearts and expertise. At that time a typical web developer at least had knowledge of PHP and Javascript.
What we’ve noticed during researching various languages is that almost all actions done by the catalog service will boil down to the following paradigm:
- Execute a HTTP call to fetch some JSON
- Transform JSON to a desired output
- Respond with the transformed JSON
Actions that easily can be done in a parallel and asynchronous manner and mainly consists out of transforming JSON from the source to a desired output. The programming language used for the catalog service should hold strong qualifications for those kind of actions.
Another thing to notice is that some functionalities that will be built using the catalog service will result into a high level of concurrent requests. For example the type-ahead functionality will trigger several requests to the catalog service per usage of a user.
To us, PHP and .NET at that time weren’t sufficient enough to us for building the catalog service based on the requirements we’ve set. Eventually we’ve decided to use Node.js which is better suited for the things we are looking for as described earlier. Node.js provides a non-blocking I/O model and being event driven helps us developing a high performance microservice.
The leap to start programming Node.js is relatively small since it basically is Javascript. A language that is familiar for the developers around that time. While Node.js is displaying some new concepts it is relatively easy for a developer to start using it.
The beauty of microservices and the isolation it provides, is that you can choose the best tool for that particular microservice. Not all microservices will be developed using Node.js and Elasticsearch. All kinds of combinations might arise and this is what makes the microservices architecture so flexible.
Even when Node.js or Elasticsearch turns out to be a bad choice for the catalog service it is relatively easy to switch that choice for magic ‘X’ or component ‘Z’. By focussing on creating a solid API the components that are driving that API don’t matter that much. It should do what you ask of it and when it is lacking you just replace it.
Many more headaches to come later this year ;)3 -
https://medium.com/@mihauco/...
Article about how to build a Website - in 1999. Maybe Inportant to those of us learning perl atm. -
Portrait of Me, Writting Documentation -- a short french film:
The processes applied to any section of memory utilized for a given purpose should be strictly limited to those declared by the associated type that encapsulates the purpose in question until release or mutation.
That is to say, improperly encoding the intended usage of such a block by utilizing an identical type or alias thereof for a multitude of incompatible situations, giving place to guesswork to arise, constitutes the prostitution of an abstraction.
Such heinous acts of symbolical pimping have received strong condemnation from multiple digital rights organizations, as well as our own, prestigious office. Let it be made Crystal, Alizé and Hennessy clear, that we will not stand for this kind of degenerate practice, and that any heretical sects and cabals built around worship of the strange creatures that arise every eleventh night from the depths of the Black Mausoleum will be prosecuted with the full force of the law.
As a young, corageous man once said at the peak of his career: "it is only through the self-inflicted, hyperbolic discharge of smouldered, comminute perennial anadenanthera colubrina spermatic fluid that the cannonical transfiguration of our collective rectosigmoid junction can be brought to fruition". He was immediately violated with might and ire far beyond our wildest, most profligately depraved fantasies, yet his message lives on.
I leave you now to be ritually and figuratively blown by a posssessed mortician that is to become concubine to our dark master; the long journey to the old graveyard will be perilous, and my destination most assuredly fatal, as I depart to give my firstborn to our Lord Berzchjanzad -- a blood sacrifice meant to appease him from peeling off my skin and refashioning it into a bloodied scarf to be worn around his thumping, grandemonic cock.
And in this moment, as I stare blankly at this teleprompter, the president wishes to reassure you of his sacred vows of stalwart and promethean gayhood, and may __these__ nuts bounce on chins forevermore. Here's to *not* bleeding to death in retribution for this unending litany of sins...
Yet all predictions come to pass.
««««««««««« finẽ »»»»»»»»»»»