fXceed

eXceeding Abundantly!

  • Home
  • About PopToo Project
Twitter RSS

Re-organizing once unclear iOS project

Posted on 2011/04/20 by petershine
No Comments

For about three weeks working for the company, I have been dealing with the project that has been developed by other programmers before. Looking through the lines of code, I could observe how lack of solid architecture made the project to be extremely difficult to manage and discouraging for a newly added member like me to understand the flow and make meaningful contribution for significant progress of the project.

After a week of struggling with the unclear organization of the project, I rearranged some part of the code. Though it wasn’t done for the whole project, re-structuring classes and flow of method calling based on MVC convention did bring some sense to the project and allowed me to get on the track quite earlier than how I worried it to be.

Probably, it was because iOS development is usually done by only Xcode and only one kind of SDK, and the most of recommended practices are already established firmly and shared to the public. They are clear enough for an intermediate programmer like me to apply on the project.

With this experience of re-organizing the project and being benefited by it, I am so much motivated than ever to master software architecture, design patterns, and other important practices. For a software development project to succeed, help of an architect is necessary and I wish to be the one who is truly helpful.

Categories: Academic, Development | Tags: Career, Development, Software Architecture

One week has passed working for new company

Posted on 2011/04/10 by petershine
Comments off

One week has passed working for new company. Testing my skills in iOS development has commenced.

Unfortunately, what I have feared did happen. I got involved to the project which is struggling to be finished for some reason. It was impossible to avoid being the newly added member to the project in the midst of development. This is really daunting for me, since I have to do cramming to learn the whole plan and history of successes and failures, in limited time before the due date. And I must meet their expectation for me to actually contribute something helpful to increase the chance to finish the project successfully.

Above all, it’s really frustrating when the solutions I want to implement are not working for this project, when they are the similar ones I had done successfully in other places. Being a new comer to the project is really hard for me to trace the causes of problems, without having enough time to understand whole lines of codes and their intentions. It scares me how bad it will be if the project is much larger than current one.

I just want to save precious time, without being troubled by failed tests of implementations. It could be much better if I could get involved from the beginning of a project.

Categories: Development, Personal | Tags: Career, Development

Being employed and having new expectation for PopToo

Posted on 2011/04/04 by petershine
Comments off

I got employed to work for a South Korean company, developing iOS apps. Though it will cause me to take less attention to PopToo project, personally I am grateful for going to be able to earn some money to support myself and other activities, and continue to train myself to be a better iOS developer while working for this company.

PopToo has been great so far, being used by highly active users from United States, Brazil, Japan, Germany and Australia. While developing PopToo’s iOS app and its web application, I was not only able to learn the right technologies, but also have them to be tested by many users. Being confident about the apps to work is one thing, but confirming them actually working for many users is something really different.

However, I must admit PopToo has big disadvantage. It needs long period of time to build users, if massive strategic marketing cannot be granted to this project. Since PopToo is willing to stay free as long as possible, it’s really easy to be demotivated by having so little number of downloads for days, though it’s natural result for not being promoted like other popular apps. I shouldn’t forget not to have too much expectation for a service app like PopToo.

I guess working for a company and developing apps designed (or demanded) by others can broaden my experience in iOS deveopment, allowing me to see PopToo as an interesting test for my skills and an app that is evolving over long period time, not as something I need to be dependent on to prove myself instantly. No matter what, programming should be meaningful and fun, especially if it’s for PopToo project.

As I am getting used to new responsibilities given from the company, I will make time to continue developing for PopToo project. Though it won’t be as exciting as bringing regular updates almost every week, keep supporting the platform and its users will teach me a lot of things about software development and serving others, especially those things that can only be taught after long time has been passed. Test of time has commenced.

Categories: Personal, PopToo | Tags: Career, PopToo

[Korean] Explaining How I developed PopToo service

Posted on 2011/03/24 by petershine
No Comments

This is written in Korean, introducing myself for the development job application. However, actually this describes how I developed PopToo, what I thought and what decisions I made, rather than who I am in general. Though it’s unconventional, telling the story about what I have done for my project can tell more about who I am, since I am applying for a technical job requiring to solve to problems. I don’t know when it will be, but perhaps I may rewrite this in English to be shared, or to be used for applying for other development jobs.

[아이폰 개발]
전세계 많은 개발자들과 마찬가지로, 독학으로 직접 개발을 해보면서 학습을 했습니다. 이전부터 MacBook 제품을 사용해 왔으며, iPhone 3GS, iPad, iPhone 4 모두를 경험해보면서, 최종적으로 현재 PopToo iOS App 을 완성하여 App Store 에서 서비스 하고 있습니다. http://itunes.com/apps/poptoo

개발을 진행하면서, Objective-C 의 장단점을 충분히 경험할 수 있었으며, 성능 향상을 위해서 iOS Framework 의 전반적인 특징과 Multi-Threading 의 기초를 습득, 구현하였으며, iOS 가 제공하는 객체형 데이터베이스 Core Data 의 장점을 최대한 활용하여, 유지 보수에 탁월한 소스를 효율적으로 완성할 수 있었습니다. 충분한 검토와 고민을 하여 탄탄하고 버그 없는 Version 1.0.0 이 설계되었고, 데이터베이스 Migration 등을 포함한 업그레이드를 설계상의 큰 변형없이 무리없이 진행하면서, 현재 버젼 1.2.x 를 서비스 하고 있습니다.

아이폰 및 다른 프레임워크에서도 공통적으로 추구되는 객체지향과 MVC 방법론을 최대로 응용하여 장기적으로 유지 보수에 탁월한 설계를 완성하였습니다. 물론, 동료 개발자들과 소스가 실제로 공유될 시에는 여러가지 다른 사항들을 보완해야겠지만, 개인적으로 객체지향의 최대 장점이라 여기는 Inheritance 와 Polymorphism 의 혜택을 받으면서 수정과 개선에 필요한 작업을 최대 코드 몇줄 수준까지 줄일 수 있었습니다. 설계상 시작부터 DRY 원칙을 지키면서 Model – View – Control 을 서로 분리하였기에, 한쪽의 변경이 어떻게 다른 부분에 영향을 미치는지 확인이 무척 용이하였고, 단순반복 작업을 피하면서, 이후 업그레이드 까지 준비할 수 있었습니다.

소스코드 작업을 할 때에는 객체의 상태와 변수 값을 구동 중에도 테스트합니다. 데이터베이스 모델이 수시로 변경되고 객체의 클래스 자체가 변경될 지라도, 기본적인 구동에는 문제가 없게 할 수 있기 때문입니다. 거기에 더불어, Xcode 의 기능들을 최대한 활용하여 수시로 Build 상황을 점검하면서, 버그 없는 결과물을 만들기 위해서 테스트에 충분한 시간을 할애하고 있습니다. 물론 시간이라는 중요한 자원을 소비해야 하지만, 훌륭한 결과물이 만들어지면, 사후 관리에 필요한 시간을 별도로 할애해야 하는 상황을 방지할 수 있기 때문에, 궁극적으로는 오히려 시간을 더 아낄 수 있다고 여깁니다. 특히 PopToo 의 경우에는 버그 제거에 국한되지 않은 지속적인 업그레이드를 사용자들에게 제공해야 하기 때문에 꼭 필요한 설계 및 작업 방식이었습니다.

훌륭한 개발자 분들이 거듭 강조하시는대로, Comment 설명이 굳이 필요하지 않을 만큼 사람이 읽기 편하고, 설계의 의도와 당위성이 보이는 코드를 작성하고자 최선을 다했습니다. 목적과 용법을 쉽게 파악할 수 있는 변수, 클래스 및 메소드 명을 사용하였으며, 성능을 최대한 헤치지 않으면서 개발자가 쉽게 작업 순서도를 파악할 수 있게 한줄 한줄 신경을 썼습니다. 물론, 공동 작업자가 없이 혼자만 보게된다면 그리 심각하게 여기지 않아도 되지만, 불필요한 반복과 실수를 방지하는데 가장 좋은 방법이라고 여깁니다. 소스코드 자체가 개발 설계도가 될 수 있게 하면, 최대의 결과물이 나올 수 있기 때문입니다.

[웹 애플리케이션 개발]
PopToo 는 위치기반의 음악 정보 공유 서비스로서, 독자적인 앱으로서만이 아니라, RESTful 웹 애플리케이션과 함께 연동되는 Social Network Service 입니다. 각각의 아이폰 앱에서 데이터를 중앙 서버에 업로드하고 다른 사용자들이 공유한 데이터를 다운로드할 수 있어야 합니다. 결국, 아이폰 앱 개발 만으로는 해결할 수 없는 부분이라서 추가적인 학습이 필요한 주제였습니다.

이전부터 WordPress 기반의 블로그를 운영하면서, PHP 와 MySQL 를 활용해 보았습니다. 개발 초기에는 간단하게 PHP 를 활용한 RESTful 기반의 애플리케이션을 이용하였습니다. 웹 개발에는 초보였던 제게는 단순히 아이폰 앱에서 데이터를 업로드하고 MySQL 에 저장하고, 다운로드 받을 수 있는 것에 만족을 했었습니다. 블로그 용의 일반적인 PHP 호스팅을 사용한 무척이나 단순한 초보 수준의 작업이었습니다.

하지만, 점점 더 RESTful 기반의 웹 애플리케이션 개발에 대해 학습을 하면서, 블로그용 호스팅을 사용하는 것은 좋은 선택이 아니며, 성능과 확장성을 위해서는 PHP 보다는 Ruby 또는 Python 이 훨씬 더 용이하다는 것을 알게 되었습니다. 더군다나 자료를 검색해보아도 Ruby 또는 Python 을 이용한 자료가 훨씬 더 많고 선호됨을 알 수 있었습니다. 바쁘게 진행되는 아이폰 앱 개발에 비해서, 웹 개발은 지식과 경험의 부족함으로 어떻게 설계해야 하고 작업해야 할 지 확실한 결정을 내리기 힘들었습니다.

다행이도, Google, Amazon, Heroku, Engine Yard 등에서 개발자들을 위해서 웹 애플리케이션 전용 클라우드 호스팅을 제공하고 있습니다. 처음에는 작은 규모에서 무료로 서비스를 이용하고, 성장 규모와 트래픽에 따라서 추가 비용을 지불하게 하는 방식이어서, 본인과 같은 소규모 개발자에게, 막 새롭게 웹 개발을 배우기 시작한 사람에게는 무척이나 유용한 서비스입니다.

Ruby 기반의 Heroku 와 Python 과 Google App Engine 중에서 선택을 하려는데, 막상 두가지의 장점과 단점을 비교하기 보다는 제가 가진 한계를 어떻게 보완해 줄 수 있느냐에 더 큰 비중을 두었습니다. 개인적으로는 Ruby 언어에 대한 관심이 무척이나 크고, 학습자료의 방대함과 커뮤니티에 매료되었기에 Heroku 서비스를 이용하고 싶었으나, 웹 애플리케이션은 개발자의 역량뿐만 아니라 서버의 성능과 확장력에 대한 의존도가 무척이나 높기 때문에, 별도의 관리대응능력을 갖추지 않으면 상당히 어렵거나, 추가 비용이 많이 필요할 것으로 판단되었습니다. 반면, Google App Engine 은 이용방식에 제약이 많고, 자료가 상대적으로 많지 않지만, 자동적으로 일정 규모까지 서버의 성능을 애플리케이션에 맞게 조절을 해줄 수 있고, 일정 Quota 까지는 무료로 이용할 수 있기때문에, 저와 같은 비전문 웹 개발자에게는 상당히 유용하고 경제적인 선택이었습니다.

현재 웹 애플리케이션은, 학습자료에서 가르쳐 주는 소스들을 활용한 가장 기본적인 데이터 저장과 전송을 맡고 있습니다. 분명 PopToo 가 어떻게 성장하느냐에 따라, 웹 애플리케이션의 중요도가 커질 터인데, 시간을 내어서 웹 애플리케이션 개발능력을 더 키워보고 싶습니다. 아무리 아이폰 앱 개발에 집중을 하고 싶을 지라도, 웹 개발의 기초 정도는 분명 파악을 하고 Prototype 수준으로라도 개발을 할 수 있어야, 공동 작업시 웹 개발 담당자와의 의사소통과 작업 효율을 높일 수 있을 거라 생각합니다.

Categories: Development, Personal | Tags: Career, Development

Google App Engine’s recent situation & PopToo’s challenge to develop web application

Posted on 2011/03/08 by petershine
No Comments

For unknown length of time, Google App Engine suffered server errors related to importing modules. And PopToo and other companies’ web applications were affected. Fortunately, it was solved by Google sooner than I thought, or not soon enough for others.

I don’t know about others, but for me the main reason for using Google App Engine was simply because I don’t have experience in administrating servers and scaling them up to accommodate millions of requests. Until I finish teaching myself thoroughly about the subject and be tested with some important issues, developing for both iOS and web application simultaneously could be excruciating.

I shouldn’t forget, and hope some of PopToo Friends may recognize, that PopToo project is currently one man project, until it’s big enough to partner with the great people. I am doing my best to make PopToo project as exciting and meaningful as possible to potential partners. Fortunately,  for PopToo’s advantage, Google App Engine’s initial cost is free, allowing me to economize many current aspects of PopToo project. The dashboard’s graphic analytic, especially, is very useful for me to see how PopToo API is serving requests from PopToo Friends.

Soon, my focus will be shifted to develop for more robust and superb web application for PopToo API and PopToo Web to serve more PopToo Friends coming from non-iOS environment. Considering how this will bring more PopToo Friends, there will be so much benefit after undergoing developing for the platform where I have so little experience. It will be a great challenge, but I expect it will also be very interesting and meaningful to learn and later apply the knowledge of web development for future use.

Categories: PopToo | Tags: Google App Engine, PopToo

My expectation for PopToo project

Posted on 2011/03/04 by petershine
No Comments

Just submitted new PopToo iOS App Version 1.1.5 This is to keep the original plan I have, which is to continuously update PopToo in weekly basis. Hope this one doesn’t take too long to be ready for sale.

More and more, PopToo is becoming what I have been envisioned since the beginning. With the newly added feature, PopToo Friends can search for the songs checked-in by other Friends in YouTube. If the songs can be found, they can be played in YouTube streaming. It’s amazing to be able to listen to the songs from many different places! YouTube has become THE MEDIA PLAYER OF THE WORLD!

The most important aspect is that these songs found in PopToo’s Timeline is actually being played by the music file owners at the moment, at certain locations. With Auto Check-in switched on, they can simply share the tag information of their songs purchased and kept in their iPhone or iPod, while doing something else. Though I am still working on the objective analysis, I believe this has some significant difference or  value over just listening to the songs streamed online, which are often not owned by the listeners.

As I mentioned in previous blog, it becomes even more interesting when a PopToo Friend checks-in manually. For the user, it’s just simple act of pressing Check-in button in home screen. But when it’s open to the public in Timeline, it conveys the user’s liking of this song and implicit intention to share and recommend to other PopToo Friends. This is a kind of expression like sharing tweets or blogs. Like many other forms of media, I believe music is one of the best ways to express oneself. And this isn’t only applicable to the music makers, but also true for the listeners of their favorite songs.

My expectation for PopToo project is to become like Twitter, specially for sharing favorite songs of PopToo Friends. With #nowplaying hash tag, Twitter is already accommodating this feature somehow. But I hope PopToo to be a specially added layer of service, or an independent streaming, focused on sharing media information. By providing the constantly flowing stream of music tags using standardized format, PopToo Friends can share what they are listening as so easily as Auto Check-in, expressing themselves through their favorite songs.

My current challenges are to bring as many PopToo Friends as possible and finding the rightful accesses to the media streaming like what YouTube is trying to provide. Probably,  learning the science and technique of crowd sourcing may bring some effective solutions, I guess.

I just wish there is not so many stumbling blocks to achieve the goals, or there is enough solutions or help from others to overcome the difficulties. Adventure continues!

Categories: PopToo | Tags: PopToo

Preparing PopToo iOS App Version 1.2.0

Posted on 2011/02/23 by petershine
No Comments

No sale for PopToo iOS App was made today. It wasn’t too surprising, since the delay for latest updating was too long, for the reasons on my side and also on App Store’s side. As an excuse, I was actually preparing the bigger update which will be Version 1.2.0, but instead I had to fix some critical issues and submit Version 1.1.4. To understand App Store’s delay, I assumed the delay was probably caused by recent policy change related to In App Subscription. However, even though App Store is famous for making developers to wait for the good or bad reasons, I doubt if my updated version is too complicated to be thoroughly reviewed.

After analyzing the graph of sales, I made up the plan to upgrade PopToo iOS App on weekly basis, believing this is the best way to promote my app at the initial stage of PopToo project. After all, there are so many features need to be added and enhanced, making each upgrading not insignificant. The latest Version 1.1.4′s main feature is to allow the user to open and close continuous check-ins of one PopToo Friend in Timeline view. This feature was planned long time ago, but after careful observation, I figured it’s very critical to bring it as soon as possible.

Until there are so many different PopToo Friends constantly checking-in to fill the Timeline with diversity, it’s inevitable to let only a few Friends’ to dominate the Timeline with Auto Check-in switched on. I never wanted to penalize them since they are the highly active users who make PopToo project vibrant and exciting. It won’t become a problem if  many different users are constantly checking-in. But until then, we should be considerate to the users who only check-in occasionally and it would be bad if their check-ins of favorite songs are simply buried and ignored among the dominant ones.

This kind of users are also very important for PopToo project, since their check-ins are manually done, which have clear intentions of sharing  songs with others because they are probably their favorite songs worthy to be recommended. Perhaps, it wouldn’t be too unfair to visibly promote this kind of occasional manual check-ins. But for now, it seems to be enough to just apply grouping with numeric indication for continuous check-ins of one PopToo Friends.

So, Version 1.1.4 was submitted to bring this important feature, in the midst of developing Version 1.2.0, which has the goal to bring Foursquare integration. This integration has been promised for long time, but it’s taking longer than I expected. The main reason is to allow Twitter connection to be used along with Foursquare, unless the user wants to use Foursquare exclusively. Since Foursquare itself is also often connected to Twitter or Facebook accounts, the goal of not causing any redundancy or confusion is much harder than it seemed to be.

Since Foursquare Venues will be used for PopToo Areas, I guess it’s inevitable to revise the check-in process. Probably, the order of the process will be changed. Also, it will take some time to figure out how to use Auto Check-in with Foursquare, for it requires to select a venue when checking-in. Anyway, I believe right solution can be found, like how other solutions have been found since the beginning of PopToo project.

Categories: PopToo | Tags: PopToo

Three weeks has passed for PopToo iOS App

Posted on 2011/01/21 by petershine
No Comments

The first approval was done, and the app was open to the public on January 5, 2011. I had to make a fix for critical error and submit it again to be reviewed, but fortunately, it didn’t take too long. http://poptoo.tumblr.com/post/2618532473/fixed-parsing-related-bug

For the purpose of securing the spot, I registered PopToo as a Foursquare app so early, even though the app doesn’t have any feature for it yet. I should change my previous plan and quicken the development for Foursquare integration, since I don’t want new PopToo Friends to be disappointed at the app. http://poptoo.tumblr.com/post/2775366965/our-apologies-to-poptoo-co-visitors

However, it wasn’t too bad to get an unexpected exposure in Foursquare App listing, and it brought some visitors to PopToo.co. Some people even clicked Like button for the app which doesn’t support check-in or venue listing yet. I am so grateful for their interest in PopToo project and I will do my best to meet their expectations, especially in Foursquare integration.

From all over the world, about 140 downloads were made for an iOS app that wasn’t promoted strategically. The app was simply there and people simply downloaded it. I wonder if this many downloads could be possible if the app wasn’t free. Maybe I am too naive about this, but the dynamic of iOS App Store is extremely attractive. What can happen if I do strategically smart marketing to bring more PopToo Friends?

New version is just submitted and waiting to be published. I wish Foursquare integration can be finished as soon as possible, but the public Foursquare API library for iOS development is not using the current API version 2.0. Probably, I should build my own library. And if it’s good and acceptable, I may try contributing it to be used by other Foursquare API developers. It will be very satisfying if my codes can be useful to others.

Categories: PopToo | Tags: PopToo

PopToo project is officially started

Posted on 2010/12/31 by petershine
No Comments

PopToo iOS AppBy submitting, actually re-submitting, revised version of PopToo iOS App, the fXceed’s latest project is officially commenced. For about last 6 months, I have focused on iOS development. Realizing, how vast this world of application development is, even for just iOS sector, more and more I feel the need to learn broader and deeper.

What I realized is, especially for providing a social service, the web application programming is much important, if not more, as the client app development, even though the users may never even care about the web side. Well, being completely ignored by the users is the criteria for being a great web application, I assume. Since, PopToo iOS App is finished its preparation, PopToo Web Application resides in Google App Engine will need much more attention to be optimal, secure and thus become more invisible to the users.

It has been a great challenge for me to develop for two different platforms, iOS and Google App Engine using Python. But after all, it was more about architecture than framework. Finding bugs in processing logic was much harder than learning about semantics of programming languages. Through this experience, I developed stronger respect to the software architects, and aspiration to be become like them.

The bigger challenge is coming. I must get out of this comfort zone and actually engage with the users, the customers, the ones who support PopToo project.

Categories: PopToo | Tags: PopToo

The phase one is almost over

Posted on 2010/09/11 by petershine
No Comments

The phase one for current development is almost over, finishing critical tasks. It has been exciting time, allowing me to learn more about how to develop an application with the limited resources, knowledge, and efficiency. The biggest fight was about overcoming my own nature, the bad habit of procrastination. After all, I can confidently begin to say, “I did it.” instead of “I can do it.”,  even though it wasn’t actually wrong to say so.

At the end of this phase, I can see the big picture being drawn on what was initially a blank canvas, only requiring to be enhanced with more specific work on details. As I believed, gradual construction of the main structure of the application was definitely and critically important, especially for easing the continuous maintenance by enhancing, simplifying, or omitting certain feature. I have no doubt if the next phase of development will be more productive, because of this preparatory work.

Having sample implementation for certain functionality, though it’s explained in the official reference, is very important. Even though, the reference may provide enough information about what or how to do, the actual implementation sample quickens understanding of it, and often it solves the problem immediately, if I am not too proud to adopt it into my work. “Don’t invent another wheel” is the great principle to be followed.

The phase two will be more about enhancing the user experience, optimizing the key feature, and promoting my product to the public more effectively. Every work is great learning experience, truly meaningful for I am learning it by actually doing it.

Categories: PopToo | Tags: PopToo

Free Applications for the Developers using Mac

Posted on 2009/12/21 by petershine
No Comments

Mac and Windows togatherA few weeks ago, I reinstalled Mac OS X Leopard after one year of experiencing my first non-Windows environment. Not that I needed to fix something, but simply I wanted to set the optimal environment which I’ve learned by trials.

So far, it has been very satisfying, and owning a machine which allows me to have both Mac and Windows worlds for development is purely exhilarating.

To be honest, I don’t have anything against Windows environment. Rather, it’s because I still can have Windows in a Mac machine, I decided to get one, so I can obtain the privilege to use Mac OS X(Unix) and Windows together. For acquiring this environment, I figured Mac could be the only machine, unless I hack something.

It has been great joy to find more about Mac and useful equipments for the developers and to train myself to become better at them.

This is the list of applications I was recommended by great blog posts, and would strongly recommend to other Mac users, especially to the new developers who has experienced Mac for no more than a year like myself. I personally use these, some are available also in Windows, and of course, they are free.

Xcode:

There is no other IDE for developing an application for Mac OS and iPhone. Unlike Microsoft’s expensive Visual Studio, you can get it for free, as included in Mac machine you purchased. You may have to pay for iPhone Developer’s Program if you want to use an actual device for testing and deployment, but to use only simulator you can get Xcode with iPhone SDK for free. Currently, I am enjoying so much time to master this great tool.

Eclipse:

I cannot say much about this, but it seems like this IDE is a must for Java or other popular language developers, almost in every environment. Though I’ve been using it less then I expected because of using Xcode and Aptana more, I think nobody can ignore the importance of its presence in a developer’s machine.

Aptana:

Using almost identical user interface as Eclipse, this tool is specialized in web development. Whenever I need to write a web program, rather than using Eclipse, I use Aptana. So I designated Aptana for web development, and Eclipse for Java.

TextWrangler:

I just can’t find any other editor better than this for Mac environment. This one has almost every feature a developer can ask for. My use of an editor is to modify codes already written, while IDEs are for writing new codes, because they provide code suggestions while typing. Together with TextWrangler, I can have a mini and quick IDE for anything.

DropBox:

If you are in the situation of using more than one computer in many places, DropBox folder is a must. Though it gives only 2GB to be used for free, it’s sufficient to synchronize your working files to be shared among your office computer and home computer. This synchronization is very powerful if you save your workspace of Eclipse or Aptana in DropBox folder, you can have same coding environment shared among the computers accessing the same DropBox folder.

FileZilla:

So far I’ve been using only this one, because it seems to be the simplest and the fastest. I strongly recommend this for its bookmark and folder synchronization features.

XMind:

This is a great tool for building a beautiful mind map of your own. To me, the user interface and icon are simple and pretty.

NTFS-3G for Mac:

Since I use Windows also, it’s necessary to be able to access NTFS-3G formatted disk. You may use FAT32 format to be used in both Mac OS X and Windows, but it’s doesn’t allow a single file to be bigger than 4GB. Using this, you can stay in Mac OS X mainly while accessing Windows file system freely.

SynergyKM:

I use more than one computers. If I want to use all of them on the same desk, it’s necessary to use only one keyboard and mouse to be free from annoyance of interchanging between different keyboards and mouses. This app allows to share keyboard and mouse with multiple computers using different OSes. As long as the computers are in the same network, knowing the IP address or the computer name of the main(server) computer which will share its keyboard and mouse is suffice.

Can anyone recommend more apps, or the better alternatives to these, especially for the developers using Mac? I would love to get some comment. Thank you!

Categories: Bookmark, Development, Personal

Returning after almost 2 months of absence from blogging

Posted on 2009/11/21 by petershine
No Comments

My last post was published on August 29th, re-posting other blogger’s post. It was difficulty to balance working for others(company) and working for myself. (if they can be distinguished.)

I’ve been busy working for the company, learning and trying fundamentally important subjects. Learning new things, often with so little resources, without a personal assistance or a dedicated mentor, I’m humbled and grateful that my working environment does not simply consume my talent, but rather trains me to become more knowledgeable and pragmatically skillful.

Initially, my team was focused on iPhone development, following the latest craze, but unfortunately due to lack of preparation, the project is now canceled. It’s hard to ignore the importance of knowing exactly what to do before trying anything.

Currently, I’m actively leading an open source project, in the category of ECMS, using the famous Alfresco. For now, only I can do is utilizing it with addition of Korean language, but I hope sometime sooner my team and I can commit some meaningful contribution to the source.

Tried to blog, saved some drafts with the interesting ideas, but being not so confident enough to write without full knowledge about the subjects, prevented me from publishing. Maybe I am being too careful, or being simply procrastinating. Well, in a good way, Twitter being the useful micro blogging can be the understandable excuse.

As I got used to the professional work environment and pace, I think now I can find the time to blog more regularly, possibly at least once a week. What I strive to get is to be efficient in managing time economically for working for other and myself.

Though it has been too busy and difficult to make time for myself, I am glad that my professional experience has been enriching, meaningful enough to share with others.

Categories: Personal

[CopyBlogger] Confessions of a Comment Addict by Johnny Truant

Posted on 2009/08/29 by petershine
No Comments

ORIGINALLY POSTED IN: [CopyBlogger]

It’s interesting to run into an article about the deeper mindset, truth shared by a bloggger him or herself. Usually the established bloggers don’t show their inner thoughts, while focusing on professional, educational contributions through their posts. But in my case, for being a developer yet to be grown to become truly professional who can contribute significantly, it’s not easy to make regular posts. I wrote about “Why it’s hard for me to blog frequently“ previously and this article by Mr. Truant seems to recognize the beneficial effect of opening up oneself to the readers.

The problem with most blogs and most bloggers is that they’re playing it safe. They’re just “reporting” on things, playing by the rules of what a person should and shouldn’t say in public. If you can buck that trend and talk about what others are feeling but won’t admit, you’ll draw a reaction. Opening up, especially when it’s uncomfortable, will get you more comments.

I guess people often feel difficult to comment on the superior post which may not need any addition or editing. But if the post is about inadequacy of incompleteness of the author or the subject matters, it becomes much easier to add to or edit the inferior post by commenting. Identifying this idea, Mr. Truant listed how to get more comments:

  1. Think of something that you feel or that is bothering/affecting you, but which you are reluctant to talk about.
  2. Ask yourself if other people are likely to identify with it or to feel the same thing, but are similarly reluctant to admit it. There’s little point to confessing to something that only you feel. (So for instance, perhaps you have a deep desire to rub yourself with rats. It seems unlikely that others will share this desire. But maybe that’s me. Maybe I’m out of touch.)
  3. Make your confession, showing yourself in full, naked glory.
  4. Watch the comments roll in.

This works because everyone has foibles, but most people are too preoccupied with looking “correct” or “professional” to discuss them. By finding and talking about these “elephant in the room” topics, you’re being brave on behalf of your readers. You’re being the first person to say what everyone is thinking, but which everyone is afraid to admit. You’re giving them permission to feel the same way, to discuss it, to admit it in kind.

While it’s important in blogging to be able to guide and contribute by sharing special knowledge or providing better solutions to the problems, sometimes it’s meaningful to connect with the readers by having the vulnerable communication, making oneself seemingly weaker. Amazingly, people don’t easily attack or slander the humble and  sincere blogger.

But what people really want, I think, is a friend. Not some know-it-all who pretends to like you just so he can make a sale, but a living, breathing human being who is just as screwed up as you are and isn’t afraid to admit it.

Categories: Bookmark

BOOK: Designing for the Social Web by Joshua Porter 06

Posted on 2009/08/22 by petershine
No Comments

I have been posting selected excerpts from the book “Designing for a Social Web” by Joshua Porter. Translating back from the Korean version of the book, I just want to tell the readers that the serial posts of the excerpts is not authorized by the owner of book. I just wanted to share the excerpts so useful to my own projects, and thought the imperfect translation from Korean version back to English may be acceptable.

Following excerpts are not as structured as a serious composition should be, merely combining the selected sentences I took from the book and translated back to English.

  • Chapter 1: Emergence of Social Web Era
  • Chapter 2: Framework for Social Web Development
  • Chapter 3: Sincere Conversation
  • Chapter 4: Bringing people to sign up

<< Previous Chapter 5: Keeping the users constantly satisfied

Selected excerpts from Chapter 6: Building collective intelligence

Sometimes, an individual must be sacrificed to provide better service to the mass.

Complex System is the mutually linked one, cannot prove its features or functionality when it’s disintegrated.
But when it’s integrated as one system, it shows more than one actual or potential features or functionality.

Adaptability is the capability to change flexibly throughout time.

It’s important for the designers and the developers to flexibly change the target users for keeping the system as healthy as possible.

The purpose of this kind of social system is to concentrate individual activities and bring out or create the most qualified and largest number of contents. The result of this process is called the collective intelligence.
The designer or developer can draw insightful ideas and information from this collective intelligence generated by many people.
In other words, the larger number of people can make the more qualified and accurate decisions, than the smaller number of people.

For this to be possible, activities of the users must be recorded and the innate or implicit patterns must be brought out using these steps:

  1. The initial behavior like submitting a new content. The fate of it is determined by the system rules and the other users.
  2. Exposure. The algorithm or the rules of the system based on the subject or suitability to the system. The exposure changes to display the good ones among different contents.
  3. Feedback. The users of the system can change the exposure of the content by affecting the algorithm through positive or negative interaction like commenting to the content.

When your content is exposed with other similar contents, it would require only little effort to promote it.

Too much content of different quality causes confusion to the users. The system must be able to control the submission to encourage quality content exposures over others.
Entry barrier is the mean to gain superiority in the market, likewise adopting or abolishing the entry barrier in the web service is critically considered for keeping the service as healthy as possible.
These are three types of barriers:

  1. Unofficial barrier: The special design or advertisement only work implicitly on special group of people.
  2. Official barrier: Requiring signing up for an account, installing an application.
  3. Extreme barrier: Invitation only, not open to the public.

Digg uses these kinds of barriers to ensure the quality of content submitted.
It is important to evaluate the suitability and the originality of the content.

Normally, people consider the well exposed content to be valuable.

  • Exposure in the main first area
  • Frequency of exposure affects the value
  • Head position in the first page
  • Higher rank compared with other contents

The purpose of most content is to draw a lot of visitor traffic, to the point of server error!

The ranking depicts the relevancy of contents to the users. Each user applies different combination for viewing conditions to the list of contents.

  • Chronological order
  • Popularity gained during certain range of time
  • Level of participation
  • Collaborative filtering
  • Relevancy
  • Identity of the content provider
  • Providing different perspective to look at one’s own content

The ranking is important to promote better user experience. It allows the user to recognize the value of content by comparing it with others.
The value of news service is freshness, of search engine is relevancy, and of social network is relationship.

Interface of the service is the world where users dwell and play. What’s displayed through interface determines the user experience. People often rely on the decisions made by others to make their own. Unless, the interface of the service purposely not showing information about what others think of the content, people’s evaluation on the content is heavily affected by how positively of negatively the content is examined beforehand by others. Social interface changes user’s decision.

The implicit and explicit feedback to the content are combined together to construct the overall reputation of the content.
The implicit feedback is generated from the user activities like visiting the page, bookmarking, clicking the download icon, and purchasing.
The explicit feedback is like reviewing, commenting, expressing the user preference.
It is very important to make the mechanism for feedback to be so easy to use, like Digg button on a page.

Leverage point is the small thing of the service which can affect the large part of it. Opening this leverage point to the users to participate in building the quality of the web service is necessary for actively growing the social network service.

Next Chapter 7: Encouraging to share >>

Categories: Summary

The Danger of Hesitation and Procrastination

Posted on 2009/08/12 by petershine
4 Comments

For many days, I had been seriously considering to register a domain for my web development. Finally, after many days of speculation, I had come up with almost perfect domain name. It was about two weeks ago. At the time, registration for one year was priced about $7.99. However, because of my personal reason, I hesitated to obtain it thinking there might be better options. I was wrong. And now it costs about $59.99 for one year.

I couldn’t understand what happened to me. The price that I saw about two weeks ago was sale price and I didn’t know well about the price difference in registering .at, an Austrian domain. In other words, I wasn’t fully informed about domain pricing and business. I can’t help but still thinking what if I didn’t hesitate to register the domain at the moment of conceiving the domain name.

Another lesson I learned is about the danger of procrastination. My hosting company sent me an email about its affiliate program offering $10 for putting the banner linked to its website. Not reading the details of the email, I thought about doing it a few days later. But the email offer was valid only for 3 days. Noticing how easy it was like notifying the hosting company that I put the banner in my website, I was embarrassed to ignore the value of $10 which can be used for supporting my hosting charges. Lost the easy money.

Here I would like to stress the reasons why hesitation or procrastination is ALWAYS BAD:

It happens because one is not informed enough.

Due to having narrow viewpoint or stereotypical idea, one cannot act even though the decision to do it needs to be made as soon as possible to progress the task.

It cannot be replaced by better activities.

To be honest, I cannot confidently say I always did something better or meaningful things while in the state of hesitation of procrastination.

You cannot expect the future.

Accidents happen and the remaining time becomes so much shorter than anticipated.Often it’s caused by other factors, but blaming them is not the right excuse for lack of preparing for accidents.

It leads to abandoning the initial plan.

Unless I had the strong need and will to obtain the domain name before it was too late, I would’ve abandoned my plan for developing a web service. It frightens me how shameful and regretful it could be.

It is not a good thing to talk about.

Almost nobody wants to hear about the reasons or excuses for hesitation or procrastination state. The professionals working together will definitely think negatively about the one who is mindlessly talking about what he or she could do if he or she had enough time but didn’t.

Does anyone think differently? What’s differences between hesitation and procrastination? What are your experiences? Can anyone likes to suggest links?

Categories: Personal

BOOK: Designing for the Social Web by Joshua Porter 05

Posted on 2009/08/11 by petershine
No Comments

Korean version of Designing for a Social Web

Korean version of Designing for a Social Web

I have been posting selected excerpts from the book “Designing for a Social Web” by Joshua Porter. Translating back from the Korean version of the book, I just want to tell the readers that the serial posts of the excerpts is not authorized by the owner of book. I just wanted to share the excerpts so useful to my own projects, and thought the imperfect translation from Korean version back to English may be acceptable.

Following excerpts are not as structured as a serious composition should be, merely combining the selected sentences I took from the book and translated back to English.

  • Chapter 1: Emergence of Social Web Era
  • Chapter 2: Framework for Social Web Development
  • Chapter 3: Sincere Conversation

<< Previous Chapter 4: Bringing people to sign up

Selected excerpts from Chapter 5: Keeping the users constantly satisfied

The real difficulty in running the web service is to find the way to bring people to use it constantly. The first impression which led to have loving relationship quickly fades. The answer is in motivating the users.
Keep paying attention to the users, and it will be rewarded with more ads and sponsors. Remember that these are the effect of the successfully running the service, not the necessities.

  1. Understand why people wanted to sign up and use the service
  2. Build the right interface which can motivate the users to keep using the service

Why people sign up?

Most people use the web service for simple reason. For example, the users of Amazon give and get helps from one another through reviews (reciprocity). They simply wanted to return the favors. They believe that sharing their experiences can help the other to make sound judgment.
Designing a social web service is not about economical problem, but about social capital problem. This is the list of things related to the social capital to be used in building the right interface:

  • identity
  • uniqueness
  • reciprocity
  • reputation
  • sense of efficiency
  • control
  • ownership
  • attachment to a group
  • fun

Manage identities

We have rights to present our identities freely in online environment. Online anonymity is also about managing identities. If the power and the importance of identities is neglected or denied, these problems may occur:

  • Spamming meaningless messages to the mass
  • Abusing the service, or using the service not as what the developers intended it to used
  • Inappropriate use of commenting
  • Pretending to be someone else, deceiving others

Usually, lack of clear identities cause and condone bad behaviors. There will be no way to describe one’s action and to ask for responsibilities or reward the right behaviors if the identities are not known.
Depending on how the service manages the identity, the minimum requirement like using a nickname will be sufficient enough to prevent some abuses.
Profile page is closely related the concept and the value of the web service. Each different web service displays the user profile differently.
The content must dynamically updated and displayed to the users. These are the updating mechanisms:

  • Lifestreaming. Showing the latest activities from every source.
  • Commenting Wall
  • Notification

Be aware of the problem of social network being deteriorated caused by lack of interesting activities beyond signing up and updating profiles.

Emphasize individual uniqueness

The web service should know: What’s it that only this person can do and no one else? What makes each user unique to one another?
For example, Netflix recommends movies based on the reviews the user has been made. The good service recognizes and responds to the uniqueness of the user. There are many ways to respect and encourage the users to express his or her uniqueness:

  • Display special copies about certain activities which require participation
  • Emphasize that the user can make positive contribution
  • Bring out the benefit of his or her unique contribution
  • Keep reminding him or her how unique he or she is
  • Develop the unique contribution into the meaningful perspective or element used in the service
  • Display the page which shows the differences between the contribution of the user to that of others

Maximize reciprocity

Reciprocity is about exchanging what the users gained from one another. People do have tendency to make contribution as a response to the favors they received from the other users met while using the web service. Being able to give is another form of having respectful authority.

Empower reputation

Reputation is built around the opinions of others so have strong objectiveness. The good web service has the clear system of managing and measuring one’s reputation. These are the example criteria:

  • The number for friends or fans
  • The number of posts
  • The ranks of these posts
  • The number of comments and their qualities
  • The number of posts recommended by others
  • The number of first submissions
  • The length of being an active user

The reputation plays the important role in collaboration, and the result of collaboration affects the reputation. The three conditions for collaboration to occur according to Robert Axelrod in “The Evolution of Cooperation” are:

  1. Possibility to meet again in the future. Staying as the users in the same service increases the possibility.
  2. Ability to know about one another. Knowing the reputation alone is strong enough to decide whether to collaborate of not.
  3. History of past activities of the users. The best way to judging the reputation is examining the user from the past records.

Promote usefulness

Usefulness can be defined as what benefits the users can obtain from the values of themselves using the web service. Rewarding properly to what the users contributed is how the web service becomes useful to the users.

Allow the power to control

The users often demand the power to control their own contents, whether it’s actually practiced or not. It’s important to the users to have the secure means to control the web service even if they will never use it.

Give ownerships

Let the users feel that this web service is specifically built for them, using the contents of them, and managed by them. Assure the users that it’s meaningful to use the web service. These are the effects of giving ownerships to the users:

  • Adorn the contents to be more than what they seem to be
  • When the contents are published, the owner takes more responsibilities, by taking care of them to have more values
  • Some responsibilities to manage the contents are delegated to the owners, easing the burden of the web service
  • The perception about the web site becomes more friendly

However, don’t let this ownership invade the ownerships or the user experiences of the others.

Provide model behaviors

For promoting the right ways to use the web service, the model behaviors of certain group of users can be used.

Develop attachment to the web service

The love for interacting as a group is one of main reasons why people use Internet. Most of the famous websites are for supporting group activities. Community is the very essence of social web service. People becomes the users of the service not only because it’s useful, but also it’s fun.
According to Kathy Sierra, if the web service can help the users to know more about their worlds, and to believe that the web service is exactly what they needed, they can see about themselves under the brighter lights. In other words, they will find themselves to become better than before, strongly motivated.
To receive passion from the users, the designer and developer must give passion to them first.

Next Chapter 6: Building collective intelligence >>

Categories: Summary

Why it’s hard for me to blog frequently

Posted on 2009/08/03 by petershine
4 Comments

Examining myself very closely, my recent difficulty in blogging is not because I am a total recluse who doesn’t like to share with anyone about anything. Or I can make it worse by labeling myself as a lazy person, but it’s not actually true considering what’s going on in my mind. I do have some topics in mind, but somehow it’s just not as easy to share them with the public as I thought it would. It seems to be a methodical, or a situational problem which I must learn to deal with using the solutions from the experienced bloggers and developers. There are what I suspect to be reasons or excuses for my lack of blogging.

Preoccupied in doing a project. But it’s not ready to be opened and shared yet.

  • Because I want to keep it as a secret.
  • Still the project in the conceptualizing phase which is still too abstract even to myself.
  • Waiting for internal and external encouragement on this, to solidify confidence in the project.

I guess this waiting is the major cause preventing me from actual progression. Also, without opening the minimum information about the project, how can I expect to learn anything from the experienced developers whom I can meet and interact through blogging? I must learn to present and communicate well with the experienced developers.

I am not tuned to the current events.

  • Not because I intentionally ignore them, but simply I just want to distinguish facts from opinions and it’s taking some time.
  • Due to my lack of professional insight, what I can blog about current events is only the repetition of what’s already there with a little bit of my simple thoughts. It’s not a real contribution in my measure.

To gain more professional and unique insight, it would take a lot of reading and speculating, challenging me to build and re-build knowledge basis. This task must be taken quite seriously and I need find the right way to do it.

I need to have more reading and watching to expand my knowledge and imaginations, which cannot be limited in web browsing.

  • Embarrassingly, I began to understand the need to have more various activities including something entirely different from or even against one’s field of study, in my case it’s Computer Science.
  • Narrowed perspective, intentionally or unintentionally gained prevent one from developing and sharing his or her experiences or thoughts with others.

I am thinking about having more knowledge in film making, English learning, Bible study, social servitude, and unknown other possibilities. The additional solution is to meet more people from various interests. Though I don’t neglect the value of socializing, it’s been hard for me to be more proactive.

Not utilizing the notes in my journal.

  • As a proof for not being lazy, I’ve been keeping journals. However, almost none of the notes are used in blogging. Because of excessive filtering not to jeopardize my private notes, my record keeping has contributed so little for my blogging.
  • But most of all, I think it’s lack of confidence in my notes that prevented me to review them more carefully to find the value.

The worst thing that I found while writing this blog, blogging infrequency is the consequence of not following the plan as it is scheduled. Procrastination is the worst kind of enemy for developers and bloggers like myself. It’s not only about unable to do something, but also about taking away the opportunity to do something else, possibly better and more important thing.

And I must free myself from fear of not becoming a responsible contributor. Accepting my current status of being a student of life and knowledge without any set date for graduation, must not be ashamed of utilizing the resources from others especially the open information and I must understand that mature blogging experience require so many trials and error.

In conclusion, not only for my blogging but also for other activities, I must embrace beauty of making mistakes and learning from these valuable experiences.

UPDATE(2009/08/04 16:31) Found a good article related to this blogging problem. [CopyBlogger] The Most Horrible Blog Post Ever


Categories: Personal

BOOK: Designing for the Social Web by Joshua Porter 04

Posted on 2009/07/20 by petershine
No Comments

Following excerpts are not as structured as a serious composition should be, merely combining the selected sentences I took from the book and translated back to English.

  • Chapter 1: Emergence of Social Web Era
  • Chapter 2: Framework for Social Web Development

<< Previous Chapter 3: Sincere Conversation

Selected excerpts from Chapter 4: Bringing people to sign up

The users who consider the web service to be useful, they will show appreciation toward the developer who invested so much time and energy.

Usually it takes only 8 seconds for a new user to make a decision to sign up.

Even for the already signed up users, the continued process to keep them interested and persuaded is crucial.

The issues about persuading people to sign up:

  • First impression doesn’t change easily. Decision to become a loyal user is done when he or she saw the web service for the first time.
  • So many questions without opinions. Answering to their questions is the opportunity to talk about the web service.
  • A watchful latent user is becoming an active user at this point
  • The critical decision is made. To the general users, decision to use your service is not as important as success of the service.

The categories of users:

  • The users who are ready to use the service. They know the value of the service and willing to accept some difficulties in using the service.
  • Interested, but not assured users. They need to have an opportunity to find about the value of the service.
  • The fact-finders. They want to examine the service objectively based on the opinions of others. Provide them with the good instructions for using the service.
  • Skeptical users. Show the proof that many users are satisfied using the service.

The well designed sign-up page can make a visitor to be an user of the service.

Must for well designed sign-up page:

  • Give clear description of the features of the service
  • Convince the users that this is an useful service
  • Provide answers to the obvious questions
  • Challenge the unreasonable criticism or provide the facts of the service
  • Let the users to try the service to finish a task
  • Let the users to contact the other users of the service
  • Give an idea what kind of relationship the users and the service provider can establish

The essential questions:

  • Who will use the service?
  • What will the service do?
  • Where will the service be used?
  • When will the service be used?
  • Why the service is important?
  • How to use the service?

Using the pictures or the icons, explain what the service does concisely.

Complicated interface means complicated service.

Show people how to use the service.

The technical people are interested in the efficiency of the service.

Adopting the social influence idea, people care about who uses the service. It’s hard for the general public to resist the general trend.

People find it easier to sign up when their friends are already using the service.

Show the recommendations from the respectful personnel, and even from the competitor.

Specify the target users. The specifically defined service is effective.

Provide the user stories about how the service is successfully being used.

If the number of the users or usages is significant, show it to be visible to bring more attention.

Utilize the authoritative figures, their presence in the service.

Let the visitors try or use the service for free without any limitation.

Reciprocity is powerful. Give something for free to make the receiver to react in some way to return the favor to get out of the sense of being indebted.

Unless it’s necessary, build the service without needing to create an account.

Ask only for the necessary information from the user.

Next Chapter 5: Keeping the users constantly satisfied >>

Categories: Summary

[ReadWriteWeb] The Future of Search: Social Relevancy Rank by Alex Iskold

Posted on 2009/07/19 by petershine
No Comments

ORIGINAL ARTICLE: http://www.readwriteweb.com/archives/future_of_search_social_relevancy_rank.php

The article talks about the importance of prioritizing search result, or stream of posts, not based on chronological order, but based on social relevancy, or social network of followers of oneself and people he or she is following.

What we are about to get is a Social Relevancy Rank. Whenever you search streams of activity, the results will be ordered not chronologically but by how relevant each is to you based on your social graph. That is, people who matter more to you will bubble up.

The author brought up improvement ideas for mainly Twitter, or also for any SNS. Main points are:

1. The result of search query, or the front loaded posts should come initially from the relations to myself. But it limits the result, because not everyone has opinion or information about the search query.

This sounds awesome, but there is a problem. “Wilco” works well as a query because the band has just released a new album, but many other queries would return no results. Simply put, your friends on Facebook and people you follow on Twitter can’t possibly have an opinion on every topic you may be interested in. This is a problem of sparse data: trusted opinions are scarce.

2. Since the trusted result from the level-one relations is limited, expanding the network to include the relations of the relations is necessary. This expansion can also be based on likeness of people even outside of the relations.

Another step could be to include people with similar tastes, so-called taste neighbors. This approach is common among vertical social networks such as Last.fm, Flixster, and Goodreads. These networks have ideas about which people, other than your friends, are like you. However, this is a costly calculation and takes time.

3. Using the number of followers as a measure, a few of the relations can be titled as opinion leaders or the influencers among the crowd. Give higher order to their opinions in the search results or the stream of posts.

In the absence of any other metric, someone who is followed by hundreds of thousands of users is likely more relevant to you than someone you don’t know at all. Using number of followers as a weight might be a good way to order the rest of the activity stream.

I think this relevancy rank can improve what Twitter, or stream based publishing systems have been good at. For their currently chronologically ordered search results of stream of posts to be more useful or more easily to be found and processed, the additional sorting mechanism based on this relevancy ranking is crucial. Depends on the level of openness of the service enabled by APIs, the application of this system may come much quicker and may be developed to become superior service than the original.

Categories: Academic, Bookmark

Guess my blog setup is almost done.

Posted on 2009/07/17 by petershine
No Comments

Somehow I am satisfied with the current theme. So, what’s next? Better get started with the development I’ve been planning, along with finding a good job that will earn me more time than more money. But it’s true that I want a GOOD job for I don’t want to get embarrassed when I talk about what job I have.

Not only for the development use, but also for job searching, I must start the coding exercises for my PHP and Ajax learning. Or change the old ASP files to PHP version as an exercise, like I’ve posted before. I’ve starred many posts found in RSS feeds and it’s up to me to invest quality time to digest all these good ideas and knowledge.

Without something to show or share, it’s so hard to have a conversation with anyone online or offline. That’s why I must be working or studying so I can talk about it with others. Shouldn’t there be a solution for introverts who just don’t know how to express attractively? I need to examine my method of interacting with others.

Along with this matter, I must stop worrying about the frequency of making statements or blogging. While taking care for quality of my expressions, frequency matter is irrelevant or automatically solved, I guess.

Categories: Uncategorized
Previous Entries
Next Entries
  • Peter SHINe 신동혁 (Donghyeok Shin)
    iOS Developer of fXceed, professionally working for Ensight Media, learning to use righteous technologies to serve people
    • Twitter
    • Facebook
    • LinkedIn
    • StackOverflow
    • GitHub
  • Tweets

  • Recent Posts

    • PopToo is updated to Version 1.3.1!
    • Celebrating PopToo’s First Year
    • PopToo is updated to Version 1.3.0!
    • iOS Tech Talk 2011 in Seoul
    • [Korean] About my comment on the book, ‘Real iOS Programming without Interface Builder’
    • My understanding in naming a Class with Prefix
    • PopToo is updated to Version 1.2.9!
    • PopToo is updated to Version 1.2.8 for iOS 5
    • Steve Jobs, the artist of User Experience
    • PopToo is updated to Version 1.2.7!
    • Coding while Commuting
    • Why having personal projects is critical for a software developer?
    • Started research and development using Cocos2D
    • About PopToo’s Foursquare account
    • PopToo’s one reason for performance lagging: Unreleased allocation
    • Optimizing PopToo’s performance: Found the cause which can’t be removed
    • Talented people are happy to help others using their talents
    • Renewing domain and hosting services
    • Dealing with busy situation of finalizing development
    • My thoughts on teaching English grammar in S. Korea
© fXceed. Proudly Powered by WordPress | Nest Theme by YChong