Thursday, December 29, 2011
Not Want Macbook
Sunday, December 11, 2011
Gelanggang E-Book: Penulis VS Penerbit
- Penulis
- Penerbit
- Editor
- Artis grafik
- Pencetak
- Pengedar
- Pekedai
- Pembeli/pembaca
- Penulis
- Orang tengah
- Orang tengah yang tidak ada taste
- Pelukis yang tidak faham roh cerita
- Kroni penerbit
- India muslim
- Mamak
- Pembaca yang bijaksana.
- Penulis menulis karya
- Penerbit mengesan karya tersebut dan dijangkakan bestseller mengikut trend semasa. Penerbit membuat pernjanjian untuk menerbitkan karya tadi.
- Editor menyemak cerita dan tatabahasa agar selaras dengan panduan daripada kerajaan dan kualiti yang ditetapkan syarikat.
- Artis grafik mengindahkan karya tersebut dengan bentuk dan rupada serta warna yang mengancam jiwa kalbu
- Pencetak mencetak buku tersebut mengikut spesifikasi penerbit.
- Pemasaran mewar-warkan buku tersebut pada media
- Media melaporkan dan membuat coverage buku tersebut. Buzz.
- Penjual meyakinkan kedai buku untuk menjual buku tadi.
- Kedai menerima stok dan memaparkan buku tadi untuk jualan.
- Pembeli terlihat buku tersebut dan terpikat untuk membelinya.
- Pekedai memulangkan semula buku yang tidak laku kepada penerbit.
- Penulis menulis karya
- Penerbit mengesan karya bestseller. But perjanjian penerbitan buku digital
- Editorial
- Artis grafik
- Memasukkan buku ke dalam pekedai online
- Pemasaran mewar-warkan buku
- Pembeli membeli buku
- Kos cetakan per buku adalah rendah
- Kos memasukkan buku ke kedai online adalah tinggi.
When supply increase and demand stay the same then the price will drop. Hard.
- Penerbit masih relevan dalam dunia buku digital.
- Kos rak online sama/lebih mahal daripada kos cetak.
- Pekedai online suka penulis terbit sendiri buku.
- Penulis baru sukar bersaing.
- Penerbit sebagai brand karya berfungsi membantu penulis ditemui peminat.
- Penerbit membantu banyak hal bukan penulisan dalam memastikan kejayaan karya.
Thursday, December 8, 2011
Komitmen Kepada Pengguna
Komitmen kepada 'Jelas'
Saturday, December 3, 2011
Concrete5 Akan Menjadi Kuasa Besar CMS

Thursday, June 9, 2011
MSSQL 2005 - PHP 5.3 Connect!
Sunday, May 22, 2011
Great Company Blueprint
Purpose
- Create a sustainable business model that can be adopted and adapted by others.
- Create a fair and democratic company that is owned by the workers.
- Have long-term, trustworthy and meaningful relationships with our staff and customers.
Principles
- Egalitarian: The belief that all people should be treated equally. This includes equality, non-discrimination and inclusivity.
- Sustainable: We have a long-term view on our business. We watch our profits & spend wisely, we take care of each other, we support the things we depend on.
- Transparent: We communicate in an honest and genuine way. Any information or process that can be made open, will be made open.
- Fun: Create a workplace where people can have fun and want to work.
- Agile: Be flexible, receptive & adaptive, especially when dealing with staff and customers.
Methods
Concrete tools for helping us live according to our principles, including:
- Consensus-based decision making.
- Corporate transparency – any information or process that can be made open, should be made open.
- Licensing that helps benefit our company, our staff, our customers, our partners and society at large.
- Profit-sharing with staff, contributors and worthy causes.
- Don’t try to change people. Focus on getting the best from their strengths. Develop ways to work around their weaknesses.
- Prefer to work with people who share our values.
- Work against patents and other legislation that harms individual rights.
Default Employee Rules
Some employee roles may have different requirements — for example, someone working on customer support may need to have regular hours. Of course, any differences need to be noted explicitly in the employee’s contract in a section that clearly details any differences from the standard agreement.
- 75 working hours per two weeks. Ideally, employees should work schedules that are kind to them and to others.
- Equal free (vacation) time; Everyone has 35 free days a year + Saturday & Sundays. (This is basicly Finnish 5 week vacation + 10 (avg) weekday holidays). Note that this means that one should use a free day if one wants not work any Monday-Friday even if it’s a public holiday in your country! Up to 25 free days will roll over to next year (ie, the vacation part not the public holiday part); If the employee quits or is let go all saved vacation money will be paid out. One earns 25/47 vacation days / week of active work (This is used for the first and last year of employment).
- Vacation money (“Lomalta paluu raha”). When you go on vacation that is more than 3 weeks (or have used more than 3 weeks of your vacation for the year) you get an extra 1/2 month of salary. If you don’t keep your vacation the vacation money is payed at the end of the year under ‘get a life’ bonus plan.
- The employee will get a shared copyright to all code and documentation he/she produces according to the spirit of the Sun’s SCA license agreement.This doesn’t include confidential code/documentation or code/documentation that we do for customers that require full ownership to the produced code/documentation.
- 80 / 20 rule; 80% of the time the employee should work on scheduled tasks. 20% of the time they can work on any tasks of their choice, as long as they will generate revenue, make employees more efficient, or enhance company recognition in a 2 year window. The 20% tasks need to be approved to ensure they follow the above guidelines.
- The employee needs to be transparent with everything they are doing. Transparency makes the employee responsible to their peers, and makes them accountable by their own statements. It’s also the best vehicle to create trust.
- The employee needs to do a weekly report that includes everything they have done during the week, their plans for the upcoming week, and also any ideas they may have (half-baked or ready-to-use), that they would like to discuss with others. The weekly reports should show clear progress in the employee’s major tasks.
- The employee must speak up if the company is doing something they think is harmful for itself, its employees or customers. It’s crucial for the success of the company that the employees are ‘on board’ with the vision of the company. Politics are strictly forbidden!
- The salary should be competitive in the area where the employee is located. The bonus plan is not dependent on where employee is living.
- If an employee has been of significant help in getting / delivering a customer order, they are entitled to a bonus for this work. Everyone involved in a sale will share 5% in the ‘price – cost of sales’ portion of the sale (in proportion to their involvement) and everyone involved in the delivery will share another 5%. However, any such bonuses will be deducted from their part of the year-end bonus (provided the company was profitable).
- Each employee will be assigned a VIP number of 1-10 (10 being the highest) to describe their importance to the company. This number is used to calculate the end of year bonuses and ‘sell-shares’. The VIP number is agreed to when an employee joins the company and will be reviewed yearly by their manager. The employee will get directions on what they can do to increase their importance to the company (and thus their VIP number).
- The employee is assumed to be cost efficient. This means they should prefer to use:
- Cost efficient communication tools like Skype and VoIP.
- Economy traveling tickets.
- Medium priced hotels, rental cars, and restaurants.
- When traveling they should strive to stay over at their fellow employees’ places and/or share rooms with their fellow employees. (This item can be overridden with a ‘good cause’ by their manager)
- If the employee wants better hotel, food, traveling arrangements, working equipment, etc this can be arranged, but the difference should be reduced from their salary, contract money or bonus.
- When hired, the employee will be considered as ‘on-trial’ for the first 3 months. After the trial period, the Company and employee will decide if things are working out and either hire the employee or contract him under similar terms as if they were employed full-time.
- People that are not working up to expectations will receive a warning. If the situation is not corrected within one month, they will be moved to ‘on-trial’ status. After 3 months, the Company and the employee will revisit the employee’s performance and will decide whether further employment is in their best interests.
The Rules of the Company
- The Company is primarily created to generate bonuses for the employees (not to get sold).
- The Company should make it as fun as possible to work for the Company.
- The Company will strive to be small and efficient. If growing too big, it will split into separate business units or companies.
- Strive for long relationships with employees and customers. (The Company is a Family)
- The Company needs to respect the individuality of it’s employees. If the employee has reasonable ‘extra’ demands they need to be seriously considered. (For example when it comes to work on weekends, room sharing, not wanting to travel, etc).
- The Company will employ people based on their merits. They will not be discriminated based on their gender, race, religion, location, marital status or whom they have married.
- The Company will not require people to work on weekends. The Company has the right to ask the employee to work on weekends, but the employee has the right to refuse without any consequences.
- The Company will actively encourage its employees to take out their vacation and not save it for later. This is especially important for employees that are “burning out”.
- For time-critical, highly-paid, highly-profitable projects that require double working hours, the Company will pay three times the salary and/or offer paid vacation days.
- The Company will, whenever it’s possible, largely let the employee choose their own work, instead of being told what to do. By letting the employee set their own goals, he is more likely to meet them. When working on a chosen project the employee needs to work with the team lead, but after the project is done, the employee should decide on what to do next.
- The Company needs to be long term cost efficient in its daily operation. This should be considered when choosing software, phone usage, equipment, etc…
- The Company will not censor employees’ opinions or try to hinder employees from expressing them. The Company should provide appropriate forums for the employees to discuss anything work related.
- The Company will actively help and sponsor open source projects (see bonus plan).
- The Company will strive for having as much of its plans and information publicly available. All rules of the Company will be made public on its web site.
- The Company will respect the privacy of the employees. It will not read, without explicit permission from either the author or the receivers, any employee emails that are not sent to an email list and it will not read any logs from any private (query) IRC sessions.
Bonus
At end of year the profit will be distributed as follows:
- 45% will be saved for expansion
- 5% will be donated to open source projects. The project(s) will be chosen by the employees of the company by voting.
- 5% will be used to support charities. The projects will be chosen by the employees of the company by voting.
- 20% will be used to pay off existing debts.
- 20-45% (depending on debts paid) will be given out (as bonus, dividend or some other form) to employees and investors based on their VIP number and the number of working hours.
employee_profit_hours = employee_working_hours*VIP bonus = profit/(SUM(all employee_profit_hours))*employee_profit_hours
An investor which has invested 100,000 Euros is treated as an employee of VIP level 5 that has 37.5 hours a week for 47 weeks. And the investor should expect to get at least 8 % as ‘bonus’ from the bonus pool. If he gets less, the missing money will be added to his loan.
At end of year the Company will distribute 100,000 ‘semi-shares’ to its employees and active investors, in proportion to ones ‘employee_profit_hour’. This share does not have any other rights than if the company would get sold then the money paid for the company (minus all costs, investments, loans etc) will be distributed among all semi-share holders.
At end of the year the Company should strive to pay off (part of) its investors if it doesn’t expect to need the money within a 2-year time frame.
Decision-making processes
The Company is led by a CEO. His actions are governed by:
- An advisory board that is a team of external chosen experts.
- A governance team, consisting of members from the employees and the advisory board
The purpose of the advisory board is to give good advice to the CEO and the employees of the company.
The purpose of the governance team is to give directives (that must be followed) to the CEO and suggest changes to the rules and decisions processes. The governance team has the right to fire and reinstate people (including the CEO). The Company will be led in an open and democratic fashion:
- All (not customer classified information) information will be public inside of the company. This includes salaries, bonuses, shares, birthdays, etc…
- Decisions will be done in a democratic fashion and all employees should have a chance to have their say in things that matter to them.
- In cases of disagreement things should be resolved by voting with the 3 vote rule; ‘Yes, No and Never’. A decision should normally not be taken if there is a single ‘Never’ vote. In exceptional ‘life and death’ cases, after thorough discussions have been had and after all other options are exhausted, a decision can be taken even if there are ‘a few’ ‘Never’ votes, if 50 % of the company will vote yes to the proposal.
- Company should work according to the motto: “Do good decisions fast but be prepared to quickly change course if there is a way to do it.” This implies that the following should hold for ‘controversial decisions’:
- If requested, the decision makers need to clearly define the basis for a decision and provide means for proving/disproving that the decision is in the Company’s best interests. If a decision is proved wrong, it needs to be reverted and the decision makers need to analyze why it went wrong and take steps to ensure that it won’t happen again.
- The Company should learn from its mistakes and its successes. It should strive to repeat its successes and avoid its mistakes in the future.
Difficult decisions / Changing the rules
The rules of the Company can only be changed if at least 75% of the Company employees are not opposed to the changes. The owners of 51% of the voting shares in the Company (initially only the founders) have the definite power to say ‘NO’ to any made decision that doesn’t have 75% of the employees behind it. They can also propose new decisions that will be be taken if 51% of the employees stand behind it. This rule can only be changed with 85% of the voting shares.
Monday, May 9, 2011
Tips from Brian Wong
2: Don`t pretend to be somebody else, or pretend you know when you are not
3: Accept and shout out loud that you didn`t know everything, others will heard and help.
Nota untuk Programmer Baru
"Aplikasi apa yang ingin saya bina?"
Fikir dan tulis maklumat lengkap aplikasi tersebut. Lukis skrin yang akan anda sebagai pengguna lihat setiap kali butang diklik. Namakan dan catat fungsi setiap butang sehingga tiada lagi butang yang tertinggal.
Sebagai permulaan, semakin ringkas aplikasi anda semakin bagus hasilnya nanti.
Setelah itu baru kita pilih jenis programming yang akan digunakan.
Jika aplikasi anda berkisar tentang laman web, maka antara pilihan yang ada kepada adalah PHP.
Jika aplikasi tersebut lebih berkisarkan backend server, boleh cuba Python
Jika untuk diinstall pada windows, boleh cuba VB dan VB.net
Setiap aplikasi pasti memerlukan database untuk menyimpan setiap data yang diperlukan. Gunakan MySQL sebagai database pilihan.
Semua yang disebut di atas adalah mudah digunakan, banyak dokumentasi dan murah (percuma!).
Jika ada yang menasihatkan anda dengan perkataan berbunyi:
- C
- OOP (Object Oriented Programming)
- NoSQL
- Linux
- Frameworks
Lari jauh-jauh! Itu untuk masa akan datang. Sekarang yang paling penting adalah mula dengan tutorial "Hello World" untuk setiap programming language yang anda pilih.
Bersambung ke Nota untuk Programmer Amatur
Monday, April 25, 2011
"Benar" itu adalah 90% Kemungkinan untuk Betul
Setiap fakta ada pengecualian.
Setiap formula ada lingkungan.
Setiap kebenaran ada pengasingan.
Sebelum ini, kita percaya bahawa angsa itu semuanya putih. Tidak mungkin sama sekali angsa itu berwarna lain. Angsa di london bewarna putih. Angsa di Cina berwarna putih. Angsa yang dibela oleh Pak Samad juga berwarna putih. Jika benarlah ada angsa selain warna putih, maka kiamat semakin hampir.
Lalu mereka terjumpa angsa berwarna hitam di Australia.
Fakta sudah tidak benar. Bukan fakta lagi kini.
Warna hitam adalah warna kelabu yang tersangat gelap sebenarnya. Warna putih pula adalah warna kelabu yang tersangat cerah. Dunia kita ini begitu indah. Bukan sahaja ia penuh dengan pelbagai tahap warna kelabu, malah dihiasi pula dengan pelbagai tahap warna-warna lain.
Semoga kita dapat menikmati kepelbagaian warna dan ragam dunia ini.
Monday, April 18, 2011
A manifesto for web development that works
Time to stop the rant and start thinking positive. All the above is web development that’s broken. Now, what would not-broken web development look like?
Let’s go for the following:
I want to start coding now
without having to learn configuration, dependencies or deployment;
I don’t want no glue
the web is one platform, time to stop forcing us to treat it as a collection of heterogeneous components;
I don’t want to repeat myself
so don’t force me to write several validators for the same data, or several libs that do the same thing in different components of my web application;
I don’t care about browser wars
my standard toolkit must work on all browsers, end of the story;
Give me back my agility
I want to be able to make important refactorings, to move code around the client, the server, the database component without having to rewrite everything.
Give me all of this and you’ll make me a much happier coder.
Sunday, April 17, 2011
Sumber Terbuka dan Sumber Tertutup
Sumber tertutup pula adalah mainan kapitalis. Benda milik kita adalah terhad kepada apa yang dipersetujui semasa membeli. Jika anda membeli aplikasi Microsoft Office Home Edition, hanya tidak boleh sekali-kali menggunakannya untuk tujuan komersial. Walau menulis surat invoice kepada klien anda! Dunia sumber tertutup digambar kelam, terhad dan sempit.
Namun adakah kita betul-betul perlukan kebebasan?
Adakah kita mampu mengawal kuasa di tangan dengan sumber terbuka?
Adakah kita TAHU mengawal kuasa di tangan dengan sumber terbuka?
Jika sumber terbuka jauh lebih baik (kebebasan, kuasa dan percuma), maka kenapa sumber tertutup masih lagi menguasai dunia? Apple iPhone mengawal 70% pasaran smartphone. Microsoft masih mengawal lebih 80% pasaran PC. Jika kita betul-betul lihat pengguna yang memilih sumber tertutp, pasti kita dapat memahami majoriti pemikiran manusia di dunia ini.
Manusia itu fitrahnya lebih suka memilih jalan yang mudah. Manusia itu fitrahnya lebih suka bergantung pada orang lain. Dan kerana fitrah ini jugalah, lebih ramai daripada kita yang memilih untuk membeli jalan yang mudah dan membeli tempat bergantung berbanding kebebasan, kuasa dan percuma.
Pengajaran buat diri saya sendiri: jika ingin berbisnes, juallah produk yang selari dengan fitrah manusia. Abaikan kebebasan, kuasa dan harga total pada kebanyakan pasaran.
Monday, March 14, 2011
Jujur Hati
"Saya nak jadi Ultraman!"
Dan seluruh kelas tersengih. Aku pun ikut tersengih. Rasa sungguh 'cool'.
Cikgu Kamal juga ikut tersengih.
"Kamu perlu makan banyak-banyak supaya boleh jadi besar dan jadi Ultraman Malaysia!" sambung Cikgu Kamal.
Jika Cikgu Kamal tipu dan cakap "Kamu perlu belajar bawa kapal terbang" sudah pasti aku jadi seorang juruterbang sekarang. Namun aku hanya mampu menjadi seorang yang boroi.
Ultraman yang boroi sungguh tak cool.
Jujur. Nasihat yang jujur dari soeorang pakcik gila yang menyelamatkan dunia aku kini.
"Kamu pergi universiti itu nanti, belajarlah cara untuk belajar." Kata dia sambil merenung aku tajam. Aku terkesima. Suara dia begitu jujur. Nasihat dia terus masuk ke hati aku.
Tanpa sedar aku benar-benar belajar cara untuk belajar.
Grad dengan pointer yang sekecil kuman akan menyusahkan hidup kau. Kecuali jika kau sudah belajar cara paling mudah, ringkas dan pantas untuk belajar.
Kini menjadi seorang programmer hanya kerana nasihat seorang gila.
Monday, February 28, 2011
test some code
function openproject(){
if(count($_POST) > 0){
$this->load->model("noschema");
}
$data['title'] = "Open New Project";
$inputs = array(
array("type" => 'text', "name"=>'author', "value"=> "", "display" => 'Author'),
//array("type" => 'text', "name"=>'email', "value"=> "", "display" => 'email'),
array("type" => 'textarea', "name"=>'proposal', "value"=> "", "display" => 'Proposal'),
//array("type" => 'select', "name"=>'group_id', "display" => 'group', "option"=> $group_options),
//array("type" => 'select', "name"=>'company_id', "display" => 'company', "option"=> $company_options),
//array("type" => 'hidden', "name"=>'id', "value"=> $profile_data[0]['id']),
//array("type" => 'radio', "name"=>'group', "display" => 'group', "radios"=> $group_radio),
//array("type" => 'checkbox', "name"=>'company', "display" => 'company', "boxes"=> $company_checkbox)
array("type" => 'submit', "name"=>'submit', "value"=> 'submit'),
);
$data['dumper'] = $inputs;
$this->load->view("v.form.php", $data);
}