วันเสาร์ที่ 20 สิงหาคม พ.ศ. 2559

การตั้งชื่อโดเมนเนม

การตั้งชื่อโดเมนเนมมักจะเจอปัญหาในการตั้งชื่อแล้วเจอแต่ชื่อซ้ำ
แต่ก็มีคนทำเครื่องมือช่วยคิดชื่อ domainname ไว้ให้ ช่วยให้ประหยัดเวลาในการคิดชื่อเว็บได้มากเลยครับ

http://www.leandomainsearch.com/

http://www.bustaname.com/word_maker

https://www.shopify.com/tools/business-name-generator

http://www.namemesh.com/domain-name-search/

วันอาทิตย์ที่ 14 สิงหาคม พ.ศ. 2559

Strength

ทดสอบหา Strength ของตัวเองมาจากเว็บไซต์หนึ่ง

ตรงหัวข้อ Optimism น่าจะจริงเพราะงานอดิเรกของผมก็คือ rewrite code ตัวเองที่เคยเขียนไว้ให้ดีขึ้นๆหรือบางทีแค่ให้โค้ดเป็นระเบียบขึ้นเฉยๆ แต่ตรง Innovation นี่สิหมายถึงอะไร bookmark ไว้เอาไว้ทำความเข้าใจวันหลัง -__-'


Your Top 5 Strengths Are:
Innovation (100%): 

* Actively seek out positions where your ideas will be valued and encouraged.
* Be a designer, sales strategies, marketing guru, or customer service rep for new products and ideas.
* Search out and request ideas from others to stimulate your thinking.
* Constantly think of ideas that can improve businesses and the lives of others.
* You enjoy the power of words; punchy ideas stimulate your thinking - focus and play with this fact.
* For decisions, you need to know that everything fits together. Be aware and plan for decisions.
* If a decision seems to stand out as particularly bothersome, then check if it is an exception before worrying about it.
Optimism (94%): 

* Look for positions where you can be as close to customers as possible.
* Actively help plan events - like new product launches and user groups.
* Do use your humor and good attitude to excite people.
* Being positive does not mean you'll be in good mood - be aware and let others know, as needed.
* Cynics quickly sap your energy and you dislike cheering negative people - minimize these instances.
* You enjoy celebrating and should actively find ways to recognize achievements.
Faith (94%): 

* Make efforts to discover your true passion and tie it to your work, no matter what you do.
* Align, but don't compromise, your values to that of your organization.
* You respect others for learning about your family and community - give them the opportunity.
* You give more value to greater levels of service than more money - let others know this.
* People may not share your beliefs, but you feel they need to understand & respect - let them.
Self Motivation (88%):

* You don't need your hand-held; help others understand you need space to make meaningful decisions.
* Seek to take on a role where persistence is essential to success.
* Continually take on roles that demand an aura of certainty and stability.
* You have a strong self-concept that you are an agent of action - nurture it.
* You are most effective when you feel you are in control of your world - be aware and help others understand this.
* You need clear feedback to develop your instincts - review your failures and successes for lessons learned.
Strategic Thinking (88%): 

* Be on the leading edge of your organization, groups, and strategic plans.
* Be involved in organizational planning and risk management efforts.
* Always give yourself plenty of time to think through a situation.
* Read books, take a training course, or attend a seminar in strategic planning and futurism.
* Seek chances to share your ideas in writing and presentations.
* Seek solutions that worked in other places, learn from them, and try to apply them to your life and work.
Your Remaining Results Are:
Risk Taking (88%):
Communication (81%):
Purpose (81%):
Curiosity (81%):
Problem Solving (75%):
Ambition (75%):
Balance (69%):
Visionary (63%):
Resourcefulness (63%):
Leadership (63%):
Focus (56%):
Salesmanship (56%):
Teamwork (56%):
Adaptability (44%):
Integrity (25%):


Your Bottom 1 Weakness Is:
Determination (19%):


* Constantly be on the lookout for new goals and improvements.
* You're good at initiating and organizing a project, start your own and help others.
* Get feedback from people as others' expectations will energize you.
* Actively participate in helping a bogged down team into action.
* When down, think of new improvements to do tomorrow - stay on track.
* Be careful of those who really want to project and analyze - they are a non-fit for your work style!

Thank Website
http://richardstep.com/richardstep-strengths-weaknesses-aptitude-test/free-aptitude-test-find-your-strengths-weaknesses-online-version/

วันอาทิตย์ที่ 17 มกราคม พ.ศ. 2559

หลักการ submit โปรแกรมใน codecanyon

หลักการ submit โปรแกรมใน codecanyon

- ชื่ออธิบายตรงกับโปรแกรม
- ตั้งชื่อแบบ Camelcase ยกเว้น is,of,an และคำสั้นๆ (1-3 ตัวอักษร)
- และยกเว้นคำย่อเช่น CMS
- ใช้คำ industry standard เช่น jQuery และ WordPress
- ไม่ใช้คำอธิบายไม่มีความชัดเจน เช่น best, beautiful file
- คำที่ไม่เกี่ยวข้องเช่น username และคำที่ไม่เกี่ยวกับไฟล์
- ไม่ใช้คำว่าคล้ายๆ กับอะไร ให้คำอธิบายว่าจริงๆ มันคืออะไร
- คำอธิบายไม่เกิน 100 ตัวอักษร
- คำอธิบายชัดเจน เพราะคนซื้อทุกคนไม่ได้เชี่ยวชาญ
- อธิบายข้อมูลเชิงเทคนิคทั้งหมด เพื่อให้เข้าใจว่าคืออะไร และทำอะไรได้บ้าง
- ลองคิดตัวเองว่าเป็นคนซื้อจะ search ยังไง ข้อมูลอะไรที่ต้องการทราบ
- แสดงภาพตัวอย่างของ item ของคุณที่กำลังทำงาน
- แบ่งช่องไฟและย่อหน้าให้อ่านง่าย
- ห้ามใช้ชื่อสินค้าของคนอื่นใน item tags

- ชื่อแรกควรเป็นคำนามหรือกิจกรรม
- ถ้าชื่อเกี่ยวข้องกับฟิลด์ หรือกลุ่มอุตสาหกรรม หรือ เฉพาะทางให้ระบุให้ชัดเจน
- ระบุ function การทำงานเช่น tileable image
- mood หรือ style เช่น รูปแบบของ theme แต่ไม่ใช้คำที่กว้างเกินไป
- ไม่ใช้คำที่กำกวม
- เช็คคำสะกด
- อาจจะใช้คำสองคำขึ้นไปได้
- ไม่ใช้ Camelcase ยกเว้นคำย่อ

ลิงค์ที่จะใช้ได้ใน description
- ลิงค์เกี่ยวกับคุณสมบัติและที่มาที่จำเป้น
- เอกสารวิธีใช้ online, support forum แต่ต้องไม่เชื่อมโยงไปถึงลิงค์คู่แข่ง
- เนื้อหา third party plugin เพื่ออธิบายเชิงเทคนิค, api ฯลฯ
- ตัวอย่างเพิ่มเติม demo
- social media account
- ไม่อนุญาติให้ลิงค์ไปยังลิงค์คู่แข่ง

Image Preview
- ขนาด 590x300 jpg ที่ไม่มี logo ของเว็บที่มีชื่อเสียง
Thumbnail
- ขนาด 80x80 jpg,gif,png

ไฟล์หลัก (Main File)
- ชัดเจนและจัดลำดับได้ดี
- รูปตัวอย่างเพิ่มเติม jpg และใหญ่ไม่เกิน 900x900
โดยตั้งชื่อในแบบ 01_preview1.jpg, 02_preview2.jpg
โดยแยกรูปไว้ใน folder เฉพาะสำหรับรูปภาพเพิ่มเติม

Tag
- จำกัดอยู่ที่ 15 tags

Comment
- 1 comment or more per function
- descriptive comment than short comment

โครงสร้างไฟล์
- แบ่ง folder ส่วนที่เกี่ยวข้องใน folder เดียวกัน
- การแก้ไขได้ง่าย
- validate แล้ว
- style ที่ดีและ best practice
- ห้ามใส่ script, document, image ไว้ใน root folder ที่เดียวกัน
- html5 จะต้องไม่มี javascript
- App จะต้องเน้นการช่วยเหลือ work flow สำหรับ web developer
- Plugin จะต้องมีตัวอย่างและฟังชั่นใน server ของคุณ
- เช็คว่า asset สามารถนำมาขายร่วมได้

help file
- pdf, doc, txt หรือ html
- ควรจะทำให้มองเห็นภาพ
- ควรจะมีภาพ แต่ไม่ควรใช้แทน text ขั้นตอนการใช้งาน
- อาจจะใช้ Screenr.com ที่จะใช้บันทึกวิธีการใช้



วันอาทิตย์ที่ 6 ธันวาคม พ.ศ. 2558

Create diff file with php xdiff

โค้ดแสดงบรรทัดที่มีการเปลี่ยนแปลงในไฟล์เริ่มต้นและไฟล์อัพเดตล่าสุด
จะมีประโยชน์ในการ compare ให้โปรแกรมเมอร์หรือผู้ที่ต้องการตรวจสอบแก้ไขไฟล์
ให้สามารถหาตำแหน่งแก้ไขเพิ่มเติมหรือแก้ปัญหาที่เกิดขึ้นได้อย่างสะดวกรวดเร็ว
ใช้คำสั่ง xdiff_file_diff ซึ่งต้อง download dll มาลงเป็น extension ก่อนครับที่ลิงค์
http://pecl.php.net/package/xdiff
<?php

function rec($path,$target,$diff){
 $h = opendir($path);
 $time = time();
 $day = 60*60*24;
 $dayAmount = $day*5;
 while($file = readdir($h)){
  if ($file != '.' && $file != '..' && $file != '.git' && $file != 'nbproject'){
   if (is_dir($path.'/'.$file)){
    rec($path.'/'.$file,$target.'/'.$file,$diff.'/'.$file);
   }else{
    $mtime = filemtime($target.'/'.$file);
    if ($time - $mtime < $dayAmount){
     $p1 = str_replace("\\",'/',$path).'/'.$file;
     $p2 = str_replace("\\",'/',$target).'/'.$file;
     $p3 = str_replace("\\",'/',$diff).'/'.$file;
     $tdir = dirname($p3);
     @mkdir($tdir,0777,true);
     xdiff_file_diff($p1, $p2, $p3, 2);
     
     echo "<pre>\r\n=====================================================\r\n\r\n";
     echo '<strong>',str_replace('C:/wamp/www/diff','',$p3)."</strong><br>";
     $a = file($p3);
     foreach($a as $line){
      if (substr($line,0,1)=='-'){
       echo '<span style="color:red">',htmlspecialchars(substr($line,1)),'</span>';
      }
      elseif (substr($line,0,1)=='+'){
       echo '<span style="color:limegreen">',htmlspecialchars(substr($line,1)),'</span>';
      }
      elseif (substr($line,0,2)=='@@'){
       preg_match('/^@@ \-\d+\,\d+ \+(\d+)\,\d+/',$line,$matches);
       echo '<span style="color:#6495ED;">บรรทัดที่  '.$matches[1],'</span>';
      }
      else{
       echo htmlspecialchars($line);
      }
     }
     echo '</pre>';
    }
   }
  }
 }
}

header('Content-type:text/html;charset=utf-8');
rec('C:\wamp\www\init-code','C:\wamp\www\update-code','C:\wamp\www\diff');

วันศุกร์ที่ 25 กันยายน พ.ศ. 2558

cordova build error

หลังจาก update cordova เวอชั่นใหม่หรือ plugin version ใหม่
พอจะ build โปรแกรมมักจะเกิดปัญหาแปลกๆ อยู่เสมอ
บางทีก็แจ้ง error ที่ไม่เข้าใจ ตัวอย่างเช่น
cordova build failed with exit code 8
cordova build failed with exit code 1
cordova build failed with exit code 2
ซึ่งส่วนใหญ่มักจะเกิดจาก plugin หรือโค้ด java มีปัญหาบางอย่างนั่นเองครับ

เพื่อให้แสดง error ที่ละเอียดมากขึ้นให้ลองทำตามนี้ดูครับ

cordova platform remove android
cordova platform add android
cordova build android

วันจันทร์ที่ 20 กรกฎาคม พ.ศ. 2558

Code สำหรับสร้างโค้ดคำสั่ง check ข้อมูลแบบ jquery

var s=document.createElement('script');
s.setAttribute('src','http://code.jquery.com/jquery.js');
document.getElementsByTagName('body')[0].appendChild(s);

window.setTimeout(function(){
$(function(){
      var t = " $(function(){\r\n";
      var formId = $('form[id]').attr('id');
      t += " $('#"+formId+"').submit(function(){\r\n";
      $('form[id]').find(':text[id],select[id]').each(function(){
          var inputId = $(this).attr('id');
          t += " if ($('#"+inputId+"').val()==''){\r\n";
          t += " alert('Invalid "+inputId+"');\r\n";
          t += " return false;\r\n";
          t += " }\r\n";
      });
      t += "return true;\r\n";
      t += "});\r\n";
      t += "});\r\n";
      console.log('\r\n'+t+'\r\n');
});
},3000);
สำหรับ Chrome กดปุ่ม F12 แล้วใส่ไปใน tab console ได้เลยครับ แต่มีเงื่อนไขคือต้องเป็น form ที่มี id และ input ที่จะตรวจสอบจะต้องมี id เช่น
<form id="form1">
   <input type="text" id="text1">
   <input type="text" id="text2">
   <input type="text" id="text3">
   <input type="submit" value="send">
</form>
จะได้ผลลัพธ์เป็น
$(function(){
 $('#form1').submit(function(){
 if ($('#text1').val()==''){
 alert('Invalid text1');
 return false;
 }
 if ($('#text2').val()==''){
 alert('Invalid text2');
 return false;
 }
 if ($('#text3').val()==''){
 alert('Invalid text3');
 return false;
 }
return true;
});
});
ไว้สำหรับเป็นโค้ดสำหรับตรวจสอบทาง javascript ต่อไปครับ

วันอาทิตย์ที่ 5 กรกฎาคม พ.ศ. 2558

PHP Code Builder From Mysql Create Table Code

โปรแกรมแปลง create table ให้เป็น insert และ update query ครับ

ถ้าเขียนโปรแกรมฐานข้อมูลบ่อยๆ และจำชื่อฟิลด์ไม่ค่อยได้
ในการเขียนโปรแกรม insert / update
จะต้องสลับเปิดไปมาระหว่าง phpmyadmin และ php editor ซึ่งเสียเวลาและใช้เวลาพิมพ์มากพอสมควร
รวมถึงอาจจะพิมพ์ผิดต้องแก้หลายครั้ง ถ้าใช้โปรแกรมตัวนี้ช่วยจะไม่ต้องเสียเวลาพิมพ์นานและมีความถูกต้องและรวดเร็วด้วยครับ

แต่เงื่อนไขของโปรแกรมนี้จะต้องเริ่มต้นด้วย ชื่อตาราง และฟิลด์ถัดมาควรจะเป็น primary key ครับ
ไม่งั้นโปรแกรมจะแปลงข้อมูลได้ไม่ถูกต้อง

CREATE TABLE `ชื่อตาราง` (
 `id` INT(6) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT, /* primary key */
 `m_id` INT(6) UNSIGNED ZEROFILL NULL DEFAULT NULL,
 `name` VARCHAR(120) NOT NULL,
 `phone` VARCHAR(60) NOT NULL,
 `status` INT(1) NOT NULL,
 `date` DATE NOT NULL
);
ลิงค์โปรแกรม PHP Code Builder From Mysql Create Table Code