A Thorough Guide In Testing Apps Via TestFlight - For Clients, Bosses, and Testers

TestFlight - Image from Redmond Pie

The current testing process of your iOS apps via TestFlight can be tedious. But I find this easier than the process of Fabric and TestFairy wherein you will need to give the developer your device's UDID. Without further ado, here is the step-by-step guide to test an app via TestFlight - that's right, from registration up to the downloading process.

These steps were done using an iPhone. It is required to do these steps on your iOS Device where you plan to download the app.

Step 1 - Donwload the TestFlight

More details: Easy, right? To add, search for your APP STORE app on your iOS Device, and tap the Search icon at the bottom.

Step 2 - Check your email for itunesconnect invitation sent by your developer and TAP on the "activate your account"

More details: Talk to your developer. The email address that you gave to your developer will be the one you will open up. The email should look like this with the same subject.

Step 3 - Register your new iTunes Connect account.

More details: Fill up the text fields such as your password, of course. Easy again, right?

Step 4 - Check again your email account to verify your newly created iTunes Connect account

More details: you will find the code in your new email sent by Apple. Then switch to your last tab, which is the iTunesConnect - this applies if you are using your device browser for reading emails.

Step 5 - Finally, you will see the terms of conditions for your iTunes Connect account

More details: After reviewing this, leave it as is if you cannot see any button to exit this page.

Step 6 - Go to your device SETTINGS and find iTunes & App Store

More details: You can easily find the iTunes & App Store in your Settings, just scroll down a bit if you're using an iPhone 5/5s :)

Step 7 - Sign In to your iTunes & App Store using your newly created iTunes Connect account

More details: If you have successfully registered your new iTunes Connect, you should be able to sign in. 

Step 8 - Just fill up everything

More Details: Just fill up everything needed, such as your country, address, and etc... No need for credit card. Just select None if you have none.

Step 9 - After filling up the required fields asking for your details, you will see this new agreement to finish up registering your account

More Details: After reviewing, tap on AGREE.

Step 10 - Check your email inbox for the last time, and this is the last email that will be sent by your developer - then tap the button

More Details: You should see now your app on TestFlight app after you get redirected.

Finally - you will be redirected to Testflight - no need to enter Redemm Code - you will see your app to be tested

Do you still have questions? Just let me know!

To Those Who Fear Death

Do you fear death? I do, sometimes, but not really. Regardless of your religion, this is for you.

It's 3:45AM here and I stopped working on my project (this iOS project will be released internationally, so watch for it! *winks*) just  to write this blog post. My last post on this blog was in November 2016. I just feel compelled to write this.

Last night, my fiancée told me that she fears death, she's afraid of dying (I am the fiancé of Diana Rose). I told her please do not. I explained why, though I am dreading when I think of it. I just turned 24 and she's 26 - we're very far from turning old, so why does she need to fear for death? I tried convincing her to feel otherwise by sharing of what I believe and some facts such as it's damn inevitable. Let me share it to you too and explain everything further.

Again, we're in our mid 20s - she's 26. We're young yet! This damn death is inevitable - you can't avoid it, it will come whether you want it or not! And what's more, you wouldn't know when will it happen. So to those who fear death - just don't. Don't stress out your self thinking about it, life is beautiful. Life is greater than death - After freakin' all, we're all merely humans, mortals. But, good news: see John 3:16 ;)

Some of our friends already died. That's fucking life, man! Those dead friends of ours are already in God knows where. You see, we will eventually be dead. It's just that some of our friends went to the afterlife earlier than our time. Think of it, why would you be afraid of something that already happened to the other people? Let me share to you one of my favorite stories of David in Old Testament of the Bible:

23 But now he is dead, wherefore should I fast? can I bring him back again? I shall go to him, but he shall not return to me. - 2 Samuel 12

This verse above was said by David when he was questioned why he stopped fasting and crying so sudden. David is on point, man! You cannot do any damn thing to bring a dead back to life. We will meet our friends and loved ones in the future when they or we die. Every time there's a friend of mine mourning of the death of her relative, I really want to share this message to him/her. 

Lastly, if you're a Christian reading this, you must not fear death more. Man, you have Jesus. He's the way, the truth, and the life. No one comes to the Father except through Him, so believe Him regardless of what's happening to this world and whatever people tell us. These shouldn't make our faith in Him be shaken.

I further told my fiancée that when we die, we just go to sleep, or have a nice dream - for a very short time, then we will wake up quickly for the Lord's judgement. *Sorry not sorry, Atheists people ;) *

Tell me, do you still fear death now? Good. We shall see each other in the future. And no, I'm not dying yet. The Lord knows His plans for me, He still has plans to prosper me and not to harm me, plans to give me a hope and a future.

I Left Objective-C and I’m Staying With Swift

It’s been 5 months since the last time I posted a blog post here. I was so very busy, actually until now I am busy, that there’s no word that can describe how busy I was and I am. Anyway, I am handling multiple projects using Swift. The last time I used objective-c in an iOS project was last April, before I left the deteriorating company (just kidding). So yeah, here I am today, doing my very best to write another blog post about my experience with the awesome Swift. By the way, I will try my best to make some new tutorials, like how to properly integrate PayPal to your iOS project SERVER-LESS!

Swift is just awesome, I began using Swift when I entered to a new company last April (2016) (read: http://www.prettyitgirl.com/2016/05/1st-day-of-work-in-new-company-as-ios.html). I used to cursed Swift for being weird because of its optionals features, I hated it so much, just like when I hated objective-c when I first used it last September 2015. When I first used objective-c, I told myself that if only objective-c is C#, I would be awesome using it, objective-c for me back then was an alien-dedicated programming language, I mean the syntax is for the alien people. Now, back to the Swift, when I first used it, darn, I was like: “What the heck is this optional thing? Is this necessary?”

I would to share someone’s opinion on Swift (he’s an objective-c user)

I fully understand the man above, I disliked Swift, I used to. Well, not anymore! I’m here to promote Swift. Swift is a young programming language and Apple has been in effort of improving this, from the first version of Swift up to the latest 3.0. Swift is the future! Open source community has been working hard to make the server side frameworks made in Swift to make them stable for production.

How I Did My Wedding Proposal To Her - My Very Experience!

My fiancee.
It's been a week since she said 'YES' to me when I asked her if she will marry me. By the way, this is her fiancé writing a blog post on this blog. I began the plan last September 24, 2013 when I posted a message on her Facebook profile wall, saying that it will not exceed 1000 days from that date, I will propose to her. And guess what? I did my wedding proposal in the 999th day (June 19, 2016) of that cyber-made promise.

My original plan in proposing to her was bringing her, alone, without her and my family, to Eco Park (a huge garden - nature thing place, located at the northern part of Manila, Philippines). And I'll bring her to the top most part of that park and I got one or two photographers hiding somewhere ready to capture the emotions and reactions of my fiancee as I recite my message to her and as I kneel down in front of her, taking out the ring out of my pocket and ask her. That plan never happened, first, she mentioned to me that if ever I have a plan to propose to her, she wants her family to witness my proposal, oh crap! What now!?

The plan above I mentioned was still going on my head, and I've been telling myself and my colleagues that I will stick to that plan, I will just bring my family and her family and pretend that we will have a picnic together, but I just realised, days before the 999th day, that that plan sucks! That plan will never work, I realised that I hate that plan. Roxy, my colleague, a front-end web developer, came to help. Ever since that girl knew that I will be proposing to her, she was there to help me and she's been very excited for me. Anyway, Roxy suggested so much things, information overload lol. I told her that I hate my plan, long story short about Roxy, she suggested one thing. I should bring her and her family, and my family, to a restaurant. What a brilliant idea! Although, to others, it maybe an old fashion way to propose, I still love her idea. I like all of Roxy's suggestions, from the flowers and to whatever.

Roxy's message to me, days before the big day, such a nice friend.

3 days left. I called out to Meril, our boss in the office, to confirm if the price of the chopper for rent he mentioned to me is correct. He gave me the website of the company that offers a chopper ride. I was kinda desperate at that time because I really need to change my plan and time is running out.

QUICK Trivia: Did you know that there is a difference between a term chopper and helicopter? [1]

I was thinking to rent a chopper, thinking that I just need to bring our go-pro se4 and propose to her when we reach the sky. But it's so damn expensive! You can experience a chopper ride for only 5-damn-minutes, just be ready to pay P11,000.00 (approx 250 USD). I mean, I could pay for that but it isn't so practical and besides, I didn't want to jeopardise our lives just for this quick wedding proposal, needless to say, I disposed of this idea.

 2 days left before the 999th day, I 100% dumped my original plan - the Eco Park thing. I told Roxy that I will take her suggestion, a dinner with my family, my fiancee, and my fiancee family. At that time, I didn't have the plan to play a song with a guitar and bring flowers as part of my wedding proposal. I just wanted it to get done, I just wanna get engaged to my fiancee (back then, of course, she was my girlfriend, but let's stick to the term fiancee . During this day, I was still deciding what restaurant should I choose, cause Roxy and Dan (our new colleague) suggested many places, hours passed, I decided to choose the Romulo Cafe in Jupiter, Makati City. I didn't check that place thoroughly though.

After the office hours, Roxy called the restaurant. She reserved seats for me, I think she was very excited than I was at that time. She mentioned as well that there's gonna be a song to be played when I kneel before my fiancee, and that song would be A thousand years - Christina P.  The dinner would be at 7:00 PM, Sunday.

Friday before midnight
When I came home, I was thinking if I should play a song using a guitar, and what song I should sing. I am a terrible singer and have a unpleasant singing voice, believe me. I chatted some of my friends on Facebook and asked them if they have a guitar and if I may borrow it. They all said that they have no guitar even though I was willing to pay for the rental fee. Here comes Bryan Lingat, my former classmate in college, and a very good friend of mine. He was willing to borrow a guitar from someone and give it to me. Alright, so all things were set at that moment. About the flowers though, I was still undecided.

Saturday night: 9:45PM 
 When I mentioned to my family that I will be needing a guitar and that I am renting one via my friend Brian, my cousin named Cazandra overheard it and told me that she got an acoustic guitar and it produces sounds better than my old-shitty sounded Fernando small acoustic guitar. I then sent a message to Bryan immediately to not bother borrowing a guitar from his friend anymore and I was very thankful that he tried to help me. Before the clock reached 10:00 PM at that night, I contacted the Romulo Cafe via phone to double check my reservation, the lady found no reservation under my name and told me that I was calling the Quezon City branch of that restaurant, she then gave me the Makati City branch telephone number. So I called that number and to my surprise, the lady of that branch told me that there's no reservation under my name. I panicked. I told Roxy what happened, and she was ready to contact the restaurant on Sunday morning to double check it.

Sunday morning,
Romulo Cafe opens at 10 AM I think, but I called them a bit earlier than that because I was anxious to know if there's no really a reservation under my damn name. The lady over the phone confirmed my reservation and I told her to make it 14 persons instead of 10, also, I told her that I will propose to my fiancee.

Sunday afternoon 
At this time, I was very nervous, in a few hours, I will meet her and both of our families will meet each other. Damn. I prepared very well, I brought the engagement ring to my bag, brought money as well - Oh, I almost forgot to mention that I decided to buy a bouquet.

I sent a photo of the bouquet I bought, to our Viber group

5:30 PM
 I was running to the flower shop in Cubao, Quezon City, where you can find affordable flowers, and not to mention, fresh and beautiful. I bargained with the flower girl in that place although I was a bit late. Again, the dinner is at 7:00 PM. 5:40 PM, I told Roxy and my other colleagues that I was really scared and I would play a guitar song. I was fckin scared, nervous, anxious, although I was 99.9% sure that my fiancee would say YES. I was feeling all these because I would have to play a song with a guitar in front of many people including our families, and to remind you, I am a very bashful / shy type of a person.

6:30 PM
I arrived in Ayala station / Makati, I was waiting for my Uber. My photographer, named sir Kiko arrived at the venue at exactly 6:00PM, wow! I was still at the train at that time. There are reasons/things happened to me at that moment that could have f*ckd up my wedding proposal.

1. Uber drivers didn't bother to call me to know where the hell I was.
2. I didn't have a load or any way to contact the two or three Uber drivers I tried to have a book with.
3. I mistakenly placed the arrow in Uber inside a builder, that arrow indicated where I was.
4. After 3 unsuccessful attempts, I was already freakin late and this damn Uber banned me from booking for a certain amount of time.
5. I then tried booking using Grab. The driver I tried to book with was far. So I went to a taxi area and damn, it was a wrong taxi area, the taxis in that place are heading to the non-Makati places.
6. I went to the other area where taxis are bound inside the Makati. I was freakin late at that moment! My family, my fiancee  my fiancee family, and my photographer were already there at the venue and here I was at the long line of people waiting for regular taxis. Okay, time came, thank you Lord for giving me a cool taxi driver.

To make the long story a bit shorter, I arrived to the place. Thanks to the driver, he knows the place. When I left the taxi, the receptionist noticed that I got a beautiful bouquet and asked me if I was the man who's going to do a wedding proposal, and I said yes. I then explained to that lady and to their "technician" the plan:

I will go to our table, greet the family members and my fiancee  will excuse myself pretending that I will need to go to the comfort room at the 1st floor, but the truth is, I was going to get the guitar and the bouquet. We had our dinner at the 2nd floor, the nicest part of the restaurant. I brought my cousin, the owner of the guitar at the 1st floor and I took a quick practice of the song. Thanks to the Lord God for not letting my fiancee go down to find me haha! Alright, at this moment, my heart was pounding out of my freakin chest. But I was already there, #YOLO! My cousin was holding the flowers, and I put the guitar's belt on to my shoulder and we went upstairs.

Here myself comes, damn, I talked to my photographer quickly before I entered the dinner place, talked about the plans on how he will take photos of my fiancee  I already discussed to him that I hired him, sir Kiko to just capture the emotions and reactions of my fiancee during the event. My fear wasn't able to hold me back and bam! I walked straight to our table, in front of her, I started strumming the guitar and started singing the song: Grow old with you - Adam Sandler.

Her reactions, her face during my presentation.

During the refrain part of the song, which is the "I'll miss you, kiss you, give you my coat when you are cold, need you, feed you, even let you hold the remote control..." I cried. I couldn't help it but to fckg cried during the performance. Some of the family members nearly cried, or cried too. haha! After singing the song and playing the guitar,  the song A thousand years played and I asked for her hand and walked her into the spacious part of the floor, gave her the bouquet, kneeled before her, brought out the ring, got her other hand, and asked the question: "WILL YOU MARRY ME?".  She then replied: "OO NAMAN (Yes of course)." Bam! Next song: Saving forever for you - a man version from Spotify. Then I kissed her quick, and hugged her really tight while still crying and then I heard the whole crowd clapping their hands. It felt great! Some people after the dinner even congratulated us. Wooo! Thank you mahal. I love you so much!


9th Month As An iOS Developer - My Productivity Is Directly Proportional To Ambient Temperature

It's my 9th month working as an iOS developer, I feel compelled to write this post down since I've been very busy with my work and with my freelance project. This post will be about everything I wanna share, starting from the 2nd week of my work in the office up to today, Sunday - June 5, 2016.

My progress in learning Swift has been good. I become more and more confident in coding using Swift, and as the time goes by, it seems that I inadvertently neglect to remember my good old days with Objective-C. Past is past, it's up to me if I am going to deal with that past again. We all need to move on.

I also notice that the APIs made by one of the bosses in my current company are better than the APIs written by someone in my past company. I believe that the latter is so vulnerable to attacks, since the programmer is not utilising the use of authentications and headers, and other stuff in dealing with API requests. I am learning so many things in my current job, I will never stop learning and sharing, I am happy with what I'm getting from the experiences the company is giving me, thanks be to them and to the Lord.

As much as I want to be productive this afternoon, the blaze of the Sun is eating my perseverance. Two things that hold me back from being productive: the temperature in a location where I am working at, and the table and chair that I am using, never mind that coffee. Today, I'm transferring my self and my things to a new apartment unit near my company, I'm so excited. This post might be pointless to my readers, but it is important for me to put what I feel like to put on this blog. I need to stop writing this now, no, stop, alright I'm closing this post now. I need to hit the gym.

P.S. I already tried what I've been wanting to do: drinking wine while coding. Don't do it. Alcohol will ruin your capability to think, it won't help improve your logic - or is it just me?

Color Pickers Software Are Not Really Accurate

Color picker software was introduced to me by my former CTO in my previous company. They're essential for graphics designers as well as to developers. We used HueGo Lite as our color picker. But recently, I just found out that color pickers are not really accurate. Let me tell you why.

Before I continue, I must say that I have offended some of the contributors of open source community. In my last post, I reluctantly judged a certain open source third party library. I quickly edited my post though the damage has been done, and someone told me that maybe I should start learning about open source community and stop writing - hell no, I won't stop writing, even if my grammar fails, even if my sentences cannot be understood by anyone, even if it takes my time. I don't know man, I just love writing my feelings, tutorials, and stuff on a blog, more specifically - on this blog.

Going on, I remember my former CTO mentioning in his video that he'll tell us (the audience) that he will someday make another tutorial exclusive for his company employees about knowing if a third party library is shit. So yeah, again, I stand corrected, I shouldn't have said what I have posted in my last blog post, but I ain't quitting blogging. :) I am a fan and user of 3rd party libraries and planning to write my own open source libraries in the future - when I become good in writing codes lol. Cheers.

Alright, back to this post. So I downloaded a free software called Color Picker for Mac. I believe I found it on App Store. Then I began picking some common colors from my designer's wireframe for our freelance project. I thought everything was fine. Then he noticed when I run the project in a simulator that the color of a certain control is different from his design, he then gave me the hex code for that control. Check out this experiment that I have done:

I have here a paintbrush for Mac. I have drawn here a rectangle filled with a flat color with a value of 0x83C22E.

Then I tried reading the color using two free softwares.: HueGo Lite and Color Picker.

First candidate: HueGo Lite

Thanks to HueGo Lite for the free software :)

As you can see, the readings of HueGoLite is really different from what it should get. I believe it's possible to fix it, please do so, HueGoLite team!

Next candidate: Color Picker
The readings of Color Picker

Thanks to Color Picker develop/s too! It has ready made codes for developing! Yes!

The Color Picker has some ready codes to copy and paste! Cool! However, the result is different as well. Color Picker got the same value! Woah! Now I don't really know what's the purpose of these color picker softwares.

The Last Hope: Paintbrush

Yey! Way to go, Paintbrush!
Paintbrush got 100% correct result. I am not sure what's going on here. But way to go, really, Paintbrush.


I now I know what software should I use to pick a color correctly. The two softwares mentioned above, the HueGo Lite and Color Picker are cool free software for fast and easy color picking without having a screenshot file. Less hassle, but not so accurate color result.

Paintbrush on the other hand is 100% accurate but you have to have a screenshot result first, a new file which you'll certainly decide to delete it - just a bit of extra pressing of mouse but correct result.

Implementing SideNavigationController Using Storyboard And CosmicMind/Material

CosmicMind/Material is a third-party open source library, hosted on GitHub, started by Daniel Dahan. It provides lots of support to make your iOS or MacOS apps more beautiful, thus enhances user experience.

Disclaimer: I am new in open source world - therefore in software development too, I respect the contributors and especially Daniel. I meant no offence to this blog post, I have edited my words. It's just that, this library is not for someone noob, like me. I got a huge respect to people contributing to the open source community.

Yesterday, I tried this Material library, my day off. I got a project in the office, and a freelance project too, that both require to implement a Side Menu/Drawer Menu. I got a cool library already for that and successfully implemented it but got an annoying bug that when you swipe the side menu fast, it bounces a bit. My boss saw that and he wants no other library but only Material's SideNavigationController. 

I just spent more than 5 straight hours how to freakin' implement this SideNavCon of Material. They provided samples for both programmatically and storyboard implementation. However, they failed to explain how to include a Navigation Controller. So I went on and try it myself.

Again, here are the problems what I spent 5 damn plus hours on configuring this library.

1. SideNavigationController's sample has no NavigationController.

2. Assigning and a NavigationController to the Main Screen gives you a headache, quite complex at first, since I'm new to Swift.

3. If you assign a NavCon programmatically, you will have a hard time in configuring and adding Bar Button Items. You can try to use CosmicMind/Material's library too in adding Bar Button items but for me it's *annoying, or it is just for me? Cos you have to setup everything, this is not for everyone*. The icons/buttons in your NavBar is not proportional! The best way to add NavBar items is using the Interface Builder, hence the storyboard.

4. And many more, believe me :)  

Let's go ahead and implement the SideNavigationController using Storyboard, but let's keep it they way they implement it in their samples.

First: Make two screens in your storyboard.

You can have both TableViewController or NavigationController, it's up to you.

Second step: Make two classes for those 2 screens.

This step is no brainer. You make two new classes and subclass whatever type of screen you want (e.g TableViewController or ViewController)

Third step: Give them Ids.

Don't forget to assign the two classes you made for them. Checking these "Use Storyboard ID" is optional. It will just allow the Xcode to determine what ID should be used for Identity.

TAKE NOTE: We will skip the part where we will add a button in our main screen. You can just look up to their sample, contact me if you have a problem in running their sample project.

Fourth step: Setting up the SideNavigationController in your AppDelegate.

So as you can in the code snippet, both screens have no navigation controllers. and the side navigation controller or the side menu has no status bar. Now, we're going to the purpose of this blog post: Modifying the sample to put a navigation controller in our main screen using storyboard and prevent the up/down bug when we swipe the side menu.

Now, you embed a Navigation Controller in your main screen. Click on the Root View Controller screen and click the EDITOR at the top of your Xcode and EMBED IN -> Navigation Controller.

Next, click the newly embedded Navigation Controller and assign a Storyboard ID, and make a new class and make that as a subclass of UINavigaionController.

After the steps above, we will now have to modify our AppDelegate. Finally, check out the code below.

Basically, we have just init our root navigation controller and assigned a root view controller to it, which is our main screen. Then assign that navigation controller to the SideNavigationController and modify the side menu a bit to prevent a bug and make it swipe-able.

***currently running the sample app in a simulator, to provide a screenshot, even though I'm running out of time, I got plenty of tasks and appointment to do and attend... Wooo!***

So that's pretty much all the steps you need to implement a navigation controller to the CosmicMind/Material's Side Menu. If you got any questions or clarifications, post your comment below.


SVN vs GIT - The Reason Why I Personally Choose SVN

In my previous company, I used SVN as our revision control system for our projects. September 2015 when I got hired as an iOS Developer and the 'CPO', also known as, the manager of that company taught me SVN by code. Oh man, I remember those starting days when I was still in the belief that that manager is good in coding (I got no problem with that, but he could've said it earlier and didn't have to pretend. No hate. Just work. What?) Going on, I used SVN and fell in love with it until my last day at that company. They removed my access from their repositories when I left the company, I could've copied their projects but I didn't. By the way, we use Assembla as the server of all the repos. Don't get me wrong, I am so thankful they introduced to me the SVN. Hooray for that.

Then the time came, a week later, when I got hired by another company. I was a bit surprised because they use GIT as their revision control for their projects. I was surprised because I don't know anything about that. Good thing they don't punish themselves by using GIT by code. From that day I started my work for that new company, I start as well my journey in using GIT.

At the first days of using GIT, I freakin' struggled, although I use it by UI, I mean by a software called: SourceTree. That software provides a not-so-user-friendly user interface, but it will help you a lot and save you lots of effort, instead of typing commands in your command line, you just click some buttons to operate around GIT. Long story short about my GIT experience, at first I really had a hard time, but as of now, I'm enjoying it and I'm almost familiar with the GIT terms and processes.

So, the reason why I choose the SVN and will choose SVN over the GIT for a long time, if not for goot, is the simplicity. Don't get me wrong again, if you're a fan of GIT, please do understand that I also like GIT, but I like SVN more.

Going straight to the point of this blog post, here are my reasons why SVN for me is better.

1. SIMPLICITY - Straight to the POINT. It takes a simple, not so techie man, to understand the process of SVN - how it works and its technical terms. So this suits to non-technical project managers - meaning the people who manages the projects but doesn't know much about any technical stuff.

2. BETTER NUMBERING SYSTEM OF COMMITS - This gives so much point to SVN over the GIT. SVN just uses numbers to track your commits or versions much easier.

3. BETTER BINARY AND IMAGES HANDLING - I do not care about this much, since in iOS App Development, you don't usually have binary things to commit - as far as I know.

That's the only reason so far that I can think of, why I choose SVN. You might wanna correct me in some of my points or share your point of views, just post your comment.

EDIT: here's a screenshot of Ivan Krivyakov's blog post about his 1 year experience in using GIT. Click to view it nicely if you are using mobile.

Oops, here's a free comics from toblender.com

Cool, isn't it? I really like Linus Torvalds - I like his brains!

What I Have Learned In Salvaging Data Process A.K.A Data Recovery

Data recovery is a complex process, but thank goodness, there are lots of softwares you can purchase to make the task no brainer. It's been 20 days since I last posted a blog post, I've been very busy with my work and my life, I wanna tell everything on this blog but I just can't, but I got drafts here to share in the future though. Time check: 1:50AM. This will be a quick and short post.

Just a quick definition of Data Recovery from the Wikipedia:

In computingdata recovery is a process of salvaging inaccessible data from corrupted or damaged secondary storageremovable media or files, when the data they store cannot be accessed in a normal way. The data is most often salvaged from storage media such as internal or external hard disk drives (HDDs), solid-state drives(SSDs), USB flash drivesmagnetic tapesCDsDVDsRAID subsystems, and other electronic devices. Recovery may be required due to physical damage to the storage device or logical damage to the file system that prevents it from being mounted by the host operating system (OS).

So I have a cousin who's a non-techie of course, who got a virus-infected windows PC. Long story short, her two external hard disk drives (HDD) have gone into disaster. Most of the files went into the abyss.

The first thing I did was I put those external HDDs into my macbook pro, and see what this machine can do to salvage her data. Result: failed. No folders were hidden nor locked. There must be a bigger step to do next. It seems the files were deleted. I then downloaded two softwares, both full version to activate their all features.

1. Disk Drill
2. Cisdem Data Recovery

Both of these softwares did an awesome job. They successfully scanned both of the external HDDs and I was able to export the recovered data into my machine. Sadly, all of the data, well, I believe MOST of the 'recovered' data were corrupted! After trying out the full scan, I then tried the quick scan, guess what? The quick scan were able to recover some of the data and they're all readable, and yes, I was not satisfied, because it was a quick scan, not all the data were salvaged.

Most of the files are photos. Precious photos. All in jpeg format. I thought a jpeg recovery software might save those recovered yet corrupted photos. So I downloaded this:

1. Stellar Phoenix Jpeg Repair

That software is full version as well. Unfortunately, the last hope wasn't able to help me.

Lastly, I found out, from Stackoverflow, that there's no more I can do about the data. Well, there's one more thing I haven't tried out: and that is seeking out help from Data Recovery Companies.

Torn Between Several Companies... And Asking A Break From iOS-Swift

Time check first: 2:06AM - May 6, 2016. I am typing this blog post for my 2nd day at work. I just wanna say first that I ate a Yakisoba spicy chicken and currently drinking Nescafe Espresso Roast in can, a ready to drink coffee. I just wanna say that I wanna puke right now and I just wanna say that I will stop entering nonsense phrases in this blog post.

Everything went fine yesterday, May 5, 2016 - my second day of work as an iOS Developer in Swift. I worked on some easy tasks such as client change requests in the interface of a certain project and fixed some bugs of that app. Note that all of the company's iOS projects are written in Swift, and not in Objective-C (I really wanna puke now.). So, going on, I was doing fine in the office until my CTO shared a new task to me. That project was about stocks exchange, and lots of data are involve in that app. He just wanted me to help him in making the app's data processing more efficient. After an hour of inspecting the codes, I still couldn't make my brain accept the fact that I am not with Objective-C anymore. I'm with Swift, and I believe I will be with that thing for a long time. I couldn't understand the task, I mean, I just couldn't figure out where to start! I could have asked for help, but no, I needed to try to focus first on this and see what will happen.

Time passed by, I remember that I am being invited to an interview at Samsung in Taguig tomorrow afternoon. It's now Friday, so technically the interview will be held later. No, I didn't apply to Samsung directly, if I did, I believe I wouldn't be noticed. I applied via Yondu. This company has a client, and that is Samsung. Yondu is seeking for iOS developers for Samsung. After I had my phone interview with Yondu last week, the recruiter forwarded my profile and application to Samsung, and now I am being invited to an interview.

During my short break (while doing the complex task for the stocks exchange project), I sneaked into my Mail app, I mean I opened up my Mail app and then sent an email to the recruiter from Yondu - who interviewed me last week and told me last day to go to the interview this Friday. Actually, she requested to Samsung to re-schedule the interview and make it Friday just for me - it was supposed to be this Thursday, and they did. So now I became much more confused. Anyway, I sent her some questions about the job. Like how much of my expected salary did she mentioned to Samsung?

Before I proceed, I told the recruiter last Tuesday to wait for my feedback because I might leave my current company if they don't agree to meet my expected salary - hence the rescheduling of the interview. This morning, I mean, this Thursday morning, the CEO and I had a talked about my job offer. He didn't meet my expected salary but he raised it and added an allowance to somehow meet my targeted NET salary. So I'm all set now somehow.

The offer in Samsung is almost twice of what I will be receiving in my current company! However, I do not pass the interview yet, so the offer might not be true. I want to attend the interview, but for what purpose? I already signed the contract with my current company!

I really want to attend the interview, but if I pass and I get the highest offer I'll ever get so far in my whole career - what's next? Should I bite the offer and work in Samsung and exhaust my self since I will surely be an R&D (research and development) person there and the job might be more complex that what I am having right now, if they're using Swift too. Should I work in Samsung and fight with the poor filipinos riding in MRT every damn morning? Should I leave my current company hanging since I already signed the contract? The interview was rescheduled just for me, why should not I come?

Going back to my story in the stocks exchange app, the CTO assigned to me a simple yet very mind boggling task, at least for a someone with mediocre mind - like me. After exchanging emails with the recruiter and talking to my partner what I should do next, I decided to talk to my CEO.

I told him all the truths. Including the compliments, that I really like the company. All in all, the company is an ideal company for me. Nice compensation package for a someone inexperienced in Swift like me, the nearest mobile-app development company to my house, and I have the technical bosses. I told him all that, and I told him that I was thinking that I should go. I should go and leave the company for a while. At that moment, I haven't signed the contract yet. I need a break to relieve some stress and pressure. I need time to practice myself in Swift and with that, I won't be pressured next time and be confident with my Swift-skills. I told him not to worry about me having no resource of my budget, because I have a part time job - an iOS job too. He then told me that he understands me and that he has no right to stop me, he then called for the CTO. This man is also my lead/senior.

Talking with my CTO changed all the plans. Long story short, he freakin convinced me to sign the contract post-dated. I was very glad though because I think they really want me to stay, cause if not, they'd let me go easily. They even negotiated with me about my request in meeting my expected salary. He told me to sign the contract just to be sure that I will return to their company - coz I told them that I will return after my long break, which was supposedly to be a 2 to 4 weeks break, but he convinced me that 2 to 4 weeks is too long. He told me that a 1 week break for practicing Swift is enough. At first he was trying to change my mind and pushing me to be their part time or contractor instead just to give myself more time in relaxing. Again, I signed the contract post-dated, I will start next next week - May 16, 2016. Long story short, I felt happy and important.

About the interview? - I HONESTLY STILL DON'T KNOW WHAT TO DO WITH THAT. I should pray and contact the technical recruiter later. I just hate myself sometimes.