Skip to main content

Posts

Showing posts from 2011

Linux Run Level and Services Deamon config

נושא ה - services וה - deamons ב - linux תמיד היה נושא קצת מסובך אבל חשוב. אילו שרותים עולים כאשר מערכת ההפעלה עולה, מה תפקידם, מתי הם מתחילים וכיצד ניתן לנהל אותם. הדברים מוסברים בצורה פשוטה כאן: http://en.wikipedia.org/wiki/Runlevel http://www.ubuntu-unleashed.com/2007/09/i-personally-like-gui-tools-but-i-also.html אבל שתי תוכנות חמודות חדשות שמצאתי עוזרות לנהל את ספריית ה- rc בצורה נוחה: rcconfig ו - sysv-rc-conf שתי התוכנות עם ממשק TUI שאני כל כך אוהב. (TUI - Text User Interface) בניגוד ל - command line שדורשות פקודות בשורת הפקודה ובניגוד ל - GUI שמחייב הרצה של ממשק גרפי מלא (XServer) תוכנות TUI מאפשרות עבודה נוחה ב - text. התוכנות מאפשרות ניהול והחלטה אילו deamons (שרותים) יופעלו באיזה runlevel.

UTF8 ובסיסי נתונים MySQL Database

זה כבר כמה זמן אני מעוניין לכתוב על ניהול נכון של Encoding בבניית אתרי אינטרנט. אנשים נוטים לבצע טעויות רבות ולא מבינים את המשמעות שבין UTF-8 לבין תקני ISO ותקנים של Windows כגון Windows-1255. הבעיות מופיעות בבחירה לא נכונה של Charset הן בבניית העמוד והן בשמירה ב - Database. לצערי אין לי את הזמן כרגע, אבל אני בוודאי שעוד אחזור לכך ואסביר את כל שלבי ה - Encoding מה - Datbase דרך ה - Webserver וכלה בדף ה- HTML והתצוגה בדפדפן. כרגע אני משתף קוד קצר ל - mysql שימיר לנו שדות טקסט ששמרנו בהם עברית ב - Charset latin1 ל - UTF8. ALTER TABLE files ADD COLUMN temp TEXT CHARACTER SET utf8 COLLATE utf8_general_ci AFTER text; -- add the temp column UPDATE files SET temp=CONVERT(CONVERT(text USING binary) USING utf8); -- convert the data to the new column ALTER TABLE files DROP COLUMN text; -- drop original column ALTER TABLE files CHANGE temp text TEXT CHARACTER SET utf8 COLLATE utf8_general_ci; -- rename temp column Change hebrew / or other charset inside MySQL to UTF-8.

לינקים מעניינים ל - HTML5

לינקים מעניינים, חומרים, מצגות, משחקים והדגמות ל - HTML5 Slides HTML5 Rocks Slides (2010) HTML5 Latest Slides (2011-07-01) Shows Introduction to HTML5 Mobile: HTML5 vs Android Native HTML5 tutorials Demos & Games Chrome Expiriments CE: WebGL: Jelly Fish CE: Game: z-type CE: Video: Video Explosion Video: Stack & Rotate Video: Subtitles Game: Tetris Game: AngryBirds CSS3 Playground Humble Graphs gRaphaël Resources W3C HTML5 spec HTML5 Logo Mozilla tutorial rotating video HTML5 Using Form Validation Patterns Test your browser for HTML5 completness HTML5 Snippets Howto HTML/5 Elements Browser Compare Form Elements Browser Support IE9 vs. FF4 When can i use? HTML5 Browser Support HTML5 Readiness CSS3 Selectors CSS3 Selectors and Competability CSS3 Elements and Support

PHP וחילוץ נתונים מתוך HTML

במקרים רבים (ואנשים רבים שואלים אותי) אנחנו צריכים לחלץ נתונים מאתרי אינטרנט ודפי HTML. מהי הדרך הטובה ביותר לעשות זאת? ומהי הדרך הנוחה ביותר לעשות זאת? כמובן שאם האתר מספק לנו נתונים באמצעות XML או באופן מדוייק יותר RSS הפתרון הוא קל יחסית, ושימוש ביכולות המובנות של PHP לניתוח XML/RSS באות לעזרתנו. לדוגמא, simple_xml_loadfile . אך מה קורה אם אין אפשרות לגשת לאתר לקבלת מידע בפורמטים מקובלים כמו XML/RSS או JSON, ואנו נאלצים לפרסס (Parsing)\ לנתח את הדף בעצמנו? לכך מצאתי כמה פתרונות נחמדים: הראשון, הפשוט יותרת שימוש בפונקציה אשר מחלצת נתונים המופיעים בין שתי מחרוזות (strings). השני המתוחכם יותרת והנוח יותר הוא שימוש בספריית php המיצרת לנו DOM בתוך ה - PHP ומאפשרת לבצע שאילתות DOM וכן Selectors מתוך קוד ה - php על דף ה - HTML אותו אנו מנסים לפענח. לפתרון הראשון: // $text - is the full text we are searching on // $from - is the opening text we start taking data from // $to - is array of optional ending text we will fetch text until // text_between('this is a full text', 'is'

הפיכת XML ל - JSON

דינוזאורים עדיין עובדים על XML בכל מיני מקומות לצערי. זה נכון XML נותן הרבה יותר יכולות ש - JSON לא, אבל עדיין, JSON זה פשוט כיף. לעיתים אנחנו נתקלים בצורך להמיר XML ל - JSON מתוך JavaScript, כמו לדוגמא בשימוש בתוך Firefox Extension או קריאות Ajax ו - XSS Cross Sites ּScripting. ישנן הרבה ספריות ברשת להמרת XML ל - JSON רק חלקן ב - JavaScript ורובן לא עובדות. מצאתי אחת שכן עובדת: http://michael.hinnerup.net/blog/wp-content/uploads/2008/01/JsonXml.js http://michael.hinnerup.net/blog/2008/01/26/converting-json-to-xml-and-xml-to-json/ /* The below work is licensed under Creative Commons GNU LGPL License. Original work: License: http://creativecommons.org/licenses/LGPL/2.1/ Author: Stefan Goessner/2006 Web: http://goessner.net/ Modifications made: Version: 0.9-p5 Description: Restructured code, JSLint validated (no strict whitespaces), added handling of empty arrays, empty strings, and int/floats values. Author: Michael Sch

jlinq הכיף שב - JavaScript

ספריית JavaScript חמודה שנתקלתי בה הינה ספריית jlinq . jlinq היא ספריית JavaScript לביצוע שאילתות וחיתוכים על אובייקטי JSON מתוך JavaScript. משהו כמו לבצע שאילתות SQL על אובייקטים בזכרון במהלך הריצה של קוד JavaScript. נניח ויש לנו אובייקט כזה: data.users = [{id:1,name:' x ', last:' y ',age:32}, {id:2,name:' john ', last:' do ',age:10}, {id:3,name:' zoe ', last:' brown ',age:45}, {id:4,name:' jz ', last:' kin ',age:56 }]; ננח שנרצה את כל המשתמשים שהשם שלהם מתחיל ב - j: jlinq.from(data.users) .starts(' first ', ' j ').select() ונניח שנרצה את כל אלו שהשם שלהם מתחיל ב - j והם מעל גיל 20 מסודרים לפי גיל: jlinq.from(data.users) .starts(' first ', ' j ').greater(' age ',20).order(' age ').select() הכוח של הספרייה הזו מאוד חזק. ומאפשרת המון שאילתות מאוד מתוחכמות שחוסכות לנו את כל לולאות ה - for שהיינו צריכים לכת

השוואת ביצועי JavaScript במנועי IE9 אל מול FireFox 4 ו - Chrome

השוואת ביצועי JavaScript במנועי IE9 אל מול FireFox 4 ו - Chrome , עם יציאתו הכל כך מתוקשרת לעולם של Internet Explorer 9 החלטתי לעשות בדיקה קצרה (שכבר זמן רב אני מעוניין לערוך) בהשוואת ביצועים של JavaScript בין הדפדפנים השונים ואולי גם בכלל על התנהגות של השפה ( JavaScript ) בדפדפן עצמו. נעשו השוואות רבות בין הדפדפנים, על ידי החברות עצמן ועל ידי אנשים פרטיים, ובלוגים רבים נכתבו על ההבדלים שבין הדפדפנים, אך נראה שרובם התמקדו בהבדלים שבין הדפדפנים הן בממשק החיצוני והן בתמיכה (או אי תמיכה) של הדפדפנים בתקנים החדשים של HTML5 ו – CSS3 . בסקירה קצרה זו, של שמונה בדיקות שונות הבודקות נושאים שונים הן ב – JavaScript והן בתהליך העבודה של JavaScript אל מול הדפדפן, ניסיתי אני להתייחס לביצועים של JavaScript בתוך הדפדפן עצמו, ואמנם שגם על כך כבר נכתב הרבה, טוב מראה עיניים וניסיון עצמי וגם ניסיתי לדמות עבודה אמיתי באמצעות JavaScript לשימושים יום יומיים בכל אתר. .. למאמר המלא

שימוש בסלולרים של הקהל ליצירת מחשב על

באוגוסט 2008 יצרתי ביחד עםשני חברים תחת פרוייקט geekcon הדגמה מעניינת. הראנו כיצד שימוש בטלפונים הסלולריים של הקהל יכול לשמש כמחשב אחד חזק. הדגמנו זאת על ידי חישוב PI (פאי) לסיפרה ה - 20,000. מי ינצח, שימוש במחשב (לאפטופ Dual Core) או המחשב המבוזר המורכב מהטלפונים הסלולריים של באי הכנס. מאוחר יותר הדגמתי את הרעיון גם בכינוס של איגוד הגריד הישראלי. אתם מוזמנים לצפות בהדגמה ב - YouTube . חלק 1 חלק 2 הפרוייקט כולו כתוב ב - Java הן בצד השרת, והן אפליקציה לסלולרי. כל מי מבאי הכנס שהיה מעוניין להשתתף שלח הודעת טקסט (SMS) למספר סלולרי. מכשיר זה היה מחובר למחשב שלנו אשר שלח לו את האפליקציה כולל הגדרות לאפליציה אילו חלקים לחשב ב - PI. ברגע שהאפליקציה סיימה לרוץ על המכשיר היא דיווחה חזרה ב - SMS את התוצאה למחשב. ניתן לקרוא עוד על איך תיכנתנו ובנינו את המיזם כאן. מחשב על מאוסף של טלפונים סלולריים. ולסרטים עצמם: בברכה.

Data URI scheme שמירת תמונות בתוך HTML ללא שימוש בקבצים חיצוניים

לעיתים אנו נתקלים בצורך להוסיף תמונות לתוך קובץ html ללא שימוש בקובץ חיצוני. לדוגמא, כאשר: אנחנו רוצים לייצר מסמך word מתוך html שמכיל תמונות אנחנו רוצים לשלוח אימייל html שימוש ב - extensions שונים או סתם פשוט לייצר קובץ אחד גדול המכיל הכל לשם כך קיים לנו Data URI scheme שמאפשר לנו לצרף (embed) מידע לתוך url בדף שלנו ובאותו אופן גם להחזיק תמונות. דבר זה מתבצע באמצעות url שהוא בעצם המידע שלנו מקודד ב - 7Bit uuencode והוא נראה כך: < img src="data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0 vr4MkhoXe0rZigAAAABJRU5ErkJggg== " alt="Red dot" /> זו היא התמונה של נקודה קטנה אדומה, וכל האותיות והללו הן בעצם המידע של התמונה. לקריאה נוספת: http://en.wikipedia.org/w

משחק זכרון עם תמונות שלכם או מהרשת

החזרתי לחיים את משחק הזכרון הממוחשב שכתבתי. המשחק על טהרת ה - JavaScript כמו שאני אוהב :) ניתן לבנות משחק זכרון מתמונות שמחפשים ברשת או להעלות תמונות מהמחשב וליצור משחק מהתמונות שלכם. למשחק הזכרון. משחק זכרון לדוגמא עם תמונות של פיקאסו . משחק זכרון לדוגמא עם תמונות של מדונה . להעלות תמונות שלכם למשחק .

שחזור grub לאחר התקנת Windows

לאחר התקנת ווינדוס על מחשב שמותקן עם לינוקס על מחיצה נפרדת, ווינדוס דורס את ההפנייה לבחירת מערכת ההפעלה. (כמובן, לא יכול להיות שמותקנות עוד מערכות הפעלה חוץ מווינדוס על המחשב ...) ולכן, אין מתקינים מחשב עם ווינדוס ולינוקס ביחד? בהנחה שהמחשב עדיין לא מותקן, כדאי קודם כל להתקין ווינדוס ורק אחר כך לינוקס. כך לינוקס יזהה כבר את התקנת הווינדוס מראש וייצר אופציה לבחירת מערכת ההפעלה הנטענת כאשר המחשב עולה. הוא עוזה זאת באמצעות מנהל בחירת הפעלה בשם grub . אם כבר יש לכם לינוקס מותקן, המשיכו לקרוא.. כיצד לפנות מקום להתקנת מערכת הפעלה נוספת? (לא רק לינוקס או ווינדוס). השימוש שאני ממליץ הוא בתוכנה חינמית בשם gparted שעולה מידסק ומאפשרת לשנות גדלים של מחיצות ולייצר חדשות על הדיסק. לאחר התקנת הווינדוס למחיצה שיצרנו ונפעיל את המחשב מחדש הוא ייכנס ישר לווינדוס.. ולכן עלינו לשחזר את בחירת מערכת ההפעלה באמצעות ה - grub. נעלה מדיסק (Live Disk) של לינוקס. נפתח את ה - Terminal. ראשית נבדוק אלו מחיצות קיימות לנו על הדיסק: sudo fdisk -l נתחבר למחיצת הלינוקס הראשית שלנו. sudo mount /dev/sda3 ./tmp/sda3 (יש לה