პირველი ქართული ტექნოლოგიური პოდკასტი დეველოპერული კულტურის, ტრენდული ტექნოლოგიების და კარიერული ზრდის შესახებ.

პოდკასტი შეიქმნა 2018 წლის მიწურულს თუმცა გააქტიურდა 2020 წლის დასაწყისში. ამავე წელს Soundcloud პლატფორმიდან გადავბარგდი Buzzsprout-ზე, რომელიც პოდკასტებზეა ორიენტირებული და ყველა საჭირო ხელსაწყოს მთავაზობს უკეთ სამართავად.

Image for post
Image for post

პოდკასტმა მხოლოდ 2020 წელს თებერვლიდან მოყოლებული მოაგროვა 10 000 გადმოწერა (არ ითვლება soundcloud)

რა არის გადმოწერა და რით განსხვავდება მოსმენისგან? გადმოწერა != მოსმენას. აპლიკაცია ან ვებსაიტი როდესაც ფაილს მოითხოვს სერვერიდან, ლოკალურადაც იქეშირებს ხშირად, მსმენელი მერე აპაუზებს, შეიძლება აგრძელებდეს ანდაც გადაახვიოს და 0-დან დაიწყოს, მაგრამ გადმოწერით არ ნიშნავს რომ ყოველჯერზე ითხოვს ფაილს. ამიტომ მოსმენების დათვლა ძალიან რთულია, ითვლიან გადმოწერებს რომელიც მეტ-ნაკლებას ახლოს მიყვება მოსმენების რაოდენობას. …


My first ever attempt to hack native binary. I learned and researched a lot during this challenge. As an Android engineer, I mostly tackle mobile-related stuff and CTFs but I was curious how I could handle native code.

Image for post
Image for post
Photo by NihoNorway graphy on Unsplash

The task is simple: We have an input which as the name suggests is standard input for the given native program. CTF challenge also provides to download binary with the name “vulnerable”. Tried several inputs with wildcards as well but nothing has happened. Let’s dive in.


Image for post
Image for post
Photo by Arget on Unsplash

This is my first writeup of CTF challenge. Because of my background, I feel quite confident tackling Android platform-specific challenges. I didn’t attend Trend Micro CTF but one evening I was scrolling through CTFtime.org and found Mobile 2 task. Couldn’t find .apk attached but it’s included in the other writeup.

After solving the challenge I compared my findings with others and they put too much effort into this task, no need for python scripts nor setting up Frida to somehow hook into function or try to crack the encryption. …


I was working on Friday evening when my friend sent me a Twitter link to the Winja CTF quiz. I’m quite new to the CTF stuff but when I see the mobile challenge I go for it because it always looks interesting to me.

Although those methods may look primitive and I believe there are many experienced people who would laugh at these techniques still they work and it’s just a hobby, so bear with my writeup 😃

Tweet challenge

Back to the main story. This quiz asks us to find the hardcoded string in the application. Usually, if it’s hardcoded and especially if it’s native Android challenge is easy, I followed the download link to Github where I found APKs. …


ამ ორ სიტყვაში მოქცეული ამბის უკან, საკმაო შრომა, ტექნიკური ანალიზი და პროცესები დაგვიგროვდა, რაც გვინდა, რომ გაგიზიაროთ.

Image for post
Image for post
TBC mobilebank on Huawei AppGallery

ისტორიისთვის გავიხსენოთ: 2019 წელს ამერიკულ კომპანიებს შეეზღუდათ ჩინურ Huawei-ისთან თანამშრომლობა, რაც ნიშნავდა იმას, რომ Huawei-ის ტელეფონები აღარ გაიყიდებოდა Google-ის სერვისებთან ერთად და ამ სმარტფონებში არც შემდგომში ჩაიწერებოდა აღნიშნული სერვისები. Google-ის სერვისები მოიაზრებს სხვადასხვა ცნობილ აპლიკაციებს როგორებიცაა: Youtube, Gmail, Maps და თვითონ Play Store.

ერთი შეხედვით, დიდი პრობლემა არ უნდა იყოს, ზოგიერთი მომხმარებელი ამ აპლიკაციების ალტერნატივებს იყენებს, აპლიკაციის დეველოპერის გადმოსახედიდან, რომ შევხედოთ თითქოს ჩვენს აპლიკაციებსაც არ უნდა შეექმნას საფრთე, თუმცა, ასე მარტივადაც არა საქმე.

სხვადასხვა აპლიკაცია, მათ შორის თიბისის მობაილბანკის აპლიკაციაც იყენებდა Google-ის სხვადასხვა სერვისს, რისი დახმარებითაც მომხმარებლებს ბევრად უფრო მარტივ და კომფორტულ პროდუქტს სთავაზობდა. …


Image for post
Image for post
Photo by Pathum Danthanarayana on Unsplash

როდესაც საუბარი იწყება ტესტირებაზე Android პლატფორმის შიგნით ბევრი ჩუმდება. ყველას გვახსენდება ჩვენი შავბნელი ViewModel-ები და WorkManager-ები. რაღაც მომენტში გული მშვიდად გვაქ, რადგან ვიცით რომ activity/fragment-ში ჩადებული ცოდვები unit და instrumental ტესტებს არ ეხება. მაგრამ ფრაგმენტებში ისედაც არ უნდა იყოს არაფერი ლოგიკა გასატეტესტი, არა? 😈

აი როდესაც საუბარი იწყება ავტომატურ UI ტესტირებაზე Android-ში უფრო მეტი დუმდება. მოგონებებში ჩნდება არასტაბილური ტესტები , უამრავი ხელსაწყო და დოკუმენტაცია რომელიც გვპირდება დახმარებას მაგრამ რეალობაში გამოყენება ბევრად რთული აღმოჩნდება ხოლმე. პატარა საჩვენებელ მაგალითებში რომელიც Github-ზე ბევრი ვარსკვლავით იწონებენ თავს რეალურ ცხოვრებაში უსურად ჩანან. …


This is a hacky way of doing the thing that Garmin should have supposed to do.

Image for post
Image for post
Garmin and Slack Integration

Disclaimer: Post is intended for developers or tech-savvy people.

As you are here it means you have also encountered a problem with Garmin LiveTrack as it provides 0 integration support and no API for devs.

Let’s jump into it:

What we need:

  • Garmin
  • Gmail
  • Slack
  • Go lang to glue everything together

Step 1

Enable LiveTrack from Garmin Connect mobile app. Add Email recipient, we can use Gmail aliases as well like

testuser+garminlivetrack@gmail.com

Garmin will send link with the location to that address.

Step 2

There are two ways to get this…


შენიშვნა: პოსტი განკუთვნილია შედარებით დამწყები დეველოპერთათვის.

Image for post
Image for post
ფოტო ეროვნული არქივიდან

მიზანი

სამოტივაციო ხასიათის პოსტი რათა ამ სფეროში მოგიყვეთ საით მიდის გზა, რას შეიძლება ელოდეთ და როგორ მოემზადოთ ზღაპრის ენაზე.

შესავალი

წიქარა და ხუთკუნჭულა ორივე ქართული ზღაპარია, რომელიც საკმაოდ ცნობილია და მემგონი ყველა ვიცნობთ ბავშვობიდან. უცებ რომ გადავხედოთ ასე ვითარდება სიტუაცია: წიქარას უწევს დედინაცვალთან გამკლავება და შემდგომ ღორისგან თავის დაღწევა, გზად კი სხვადასხვა საგნების გადაყრა თავის დასაცავად, ხოლო ხუთკუნჭულამ კი ბევრი დავალება შეასრულა, რომლიც გაკეთება სულაც არ ეპიტნავებოდა, ბოლოს კი დევზეც გაიმარჯვა.ეს ცოტა მერე დაგვჭირდება.

მოდელი

დეველოპმენტის ერთ-ერთი ძირითადი ხიბლი, ბევრ სხვა ღირსებასთან ერთად არის პრობლემებთან გამკლავება. ვინაიდან პროგრამების უმეტესობა ჭრის რაღაც პრობლემებს რეალურ სამყაროსთვის და ადამიანებისთის, ხოლო გარესამყარო არ არის რობოტი რომ ქონდეს ორი მდგომარეობა ან 1 ან 0, ყველაფერი რაც პროგრამამ უნდა გააკეთოს ხდება იმ სამყაროსთვის სადაც 0-დან 1-მდე ნებისმიერი მდგომარეობა შეიძლება არსებობდეს. …


Image for post
Image for post
ლოგო აპპ მარკეტებიდან

Disclaimer: არ გაკეთებულა ეს ანალიზი ცუდი მიზნებისთვის და ნუ ეცდებით რაიმე მავნებლობას. რაც წერია ემსახურება იმას რომ უფრო მეტი ინფორმაცია გვქონდეს სერვისზე.

ესეიგი რა ხდება. ამ პოსტში ვეცდები ავხსნა როგორ მუშაობს ახალი Stop Covid აპლიკაცია, რომელიც დიდი იმედი მაქ რომ არ შეიცვლება მუშაობის პრინციპი.

TL; DR: ამ ეტაპზე აპლიკაცია იმას აკეთებს რაც მოეთხოვება და არაფერი საშიში არ ჩანს, კარგი იქნებოდა stopcov.ge-ს გაეკეთებინა ასეთი ვრცელი განმარტება ჩემს ნაცვლად, რომ გასაგები ყოფილიყო ყველასთვის

პირველ რიგში ეს არის წყარო, ორიგინალი საიდანც აიწყო ეს აპლიკაცია: ამიტომ ეს კოდი გავარჩიე და როგორც მუშაობს იმ პრინციპს მოგიყვებით.

გაითვალისწინეთ ეს SDK შემდგომ გამოიყენებულია აპლიკაციაში, ამიტომ მიმდინარე აპლიკაციის სორსში დაგვხდებათ სხვა ფაილებიც. …


I mean, it really sucks sometimes. A mild rant from a fellow Android dev.

Image for post
Image for post

Year in, year out something really annoying and historic issue is being solved by Android team but new emerge. Mostly this goes like this: You see some cool feature announced at Google I/O, then you go to see codelab which is inadequate, proceed to check out Github samples, for a moment you think you found a way to tackle the fresh, shiny feature. But no, we’ve all been down this road before, it has never ended well. …

About

Merab Tato Kutalia

Software Engineer with 8 years of experience, specializing in Android development. Chapter Lead @ TBC Bank. Amateur cyclist and runner

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store