راه‌اندازی کلاینت Perl به همراه mariadba 10.1 در Debian 9

به نظر می‌رسه نصب client mysql/mariadb برای perl (DBD::mysql) در نسخه ۹ یا stretch دبیان (شاید نسخه‌های دیگه و توزیع‌های دیگه هم) مشکل دارد. نصب بسته libdbd-mysql-perl با استفاده از apt کار نمی‌کنه و وقتی ماژول mysql می‌خواد لود بشه پیام می‌ده که نمی‌تونه mariadbclient.so.18 را نمی‌تونه پیدا کنه.

برای بررسی بیشتر:

نصب هیچ پکیجی قرار نیست این مشکل را حل کنه. راهکار اینه که کلاینت mysql پرل را از سورس نصب کنید. برای نصبش اول فایلش را دانلود کنید: http://search.cpan.org/~michielb/DBD-mysql-4.042/lib/DBD/mysql.pm

در ضمن مطمئن بشید بسته libmariadbclient-dev (برای استفاده از mysql_config) و build-essential (برای استفاده از make) روی سیستم نصبه. فایل فشرده را باز کنید و برید داخلش.

بعد دستورات زیر را اجرا کنید:

 

مشکل حل شده است! و می‌تونید از mariadb توی perl استفاده کنید.

کد تست:

 

نکته: در صورتی که کاربر فعلی دسترسی به دیتابیس test در mariadb نداره، می‌تونید با پارامترهای در دستور زیر perl Makefile.PL یه دیتابیس و یوزر پسورد برای تست کردن در زمان build یا تست مشخص کنید:

  • testdb نام دیتابیس تست
  • testuser نام کاربر برای اتصال به mariadb
  • testpassowrd رمز کاربر برای اتصال به mariadb
  • پارامترهای testhost و testport هم برای مشخص کردن سرور mariadba

نکته: در جدیدترین بروزرسانی perl در دبیان در فایل

یه تنظیم اضافه شده است که امکان import کردن module از فولدر فعلی وجود نداشته باشد. برای رفع مشکل اسکریپ‌های مشکل‌دار می‌شه این تنظیم را غیرفعال کرد. توجه داشته باشید این تغییر به دلایل امنیتی انجام شده است پس تا مجبور نشدین تغییر ندین:

استفاده از پارامتر I جلوی perl در خط فرمان هم می‌تونه این مشکل را موقت حل کنه.

 

خرج خونه

همیشه برای اینکه بدونم پولم را خرج چی کردم مشکل داشتم.
به همین دلیل بود که سال گذشته یه برنامه خیلی ساده و کوچولو نوشتم که توی اون خرج‌هام را یادداشت می‌کردم.
دوستان می‌دونند که حافظه خوبی ندارم، پس برنامه را سبک نوشتم که با حداقل هزینه بتونم با موبایل و استفاده از اینترنت gprs موبایل کار ثبت خرج‌هام را انجام بدم.
بعد از اون دیگه وقت نکردم به برنامه امکانات اضافه کنم مثلا برنامه باید:
۱. سیستم احراز هویت داشته باشه.
۲. گزارش عملکرد مثلا ماه و هفته گذشته داشته باشه.
و …
چند وقتی بود که ازش استفاده نمی‌کردم، امروز یادم اومد و برنامه را گذاشتم روی github که هر کسی خواست بتونه استفاده کنه:
https://github.com/sadeqn/home-costs
کمک کنید این برنامه بهتر بشه.

این برنامه با گواهی حق استفاده gpl3 منتشر شده.

 

پ.ن. یه اشکال توی کد sql نصب رفع شد. این باگ باعث می‌شد بعد از ایجاد جداول و viewها برنامه به درستی اجرا نشه.
پ.ن. یه سیستم ساده احراز هویت بهش اضافه شد. کاربر دیفالت و رمزش را در فایل readme بخونید.

پ.ن. یه خورده ساختار کد را بهتر کردم و الان نزدیک‌تر شده به ساختار MVC. البته هنوز کلی کار داره. ‌آخرین نسخه را از مخزن git hub‌ می‌تونید بگیرید.

استخدام برنامه‌نویس php

شرکت ما به دنبال استخدام چند تا برنامه‌نویس php است. متن آگهی استخدام اینه:

شرکت درخشان صنعت ( www.dsi.ir ) برنامه‌نویس php استخدام می‌کند
مهارت‌های لازم:
* تسلط کامل به PHP و آشنایی با مبانی شی‌گرایی
* آشنایی با بانک اطلاعات MySQL

شرایط کاری:
* ساعت کار ۸:۰۰ لغایت ۱۷:۳۰، شنبه تا چهارشنبه
* محیط کاری چالشی

نشانی محل کار در غرب تهران است.

در صورت تمایل اطلاعات خود را به همراه رزومه در فرم http://job.ebtekar.info وارد و ارسال نمایید

این موقعیت شغلی برای کسانی که از لینوکس خوششون میاد می‌تونه جذاب باشه. ما در قسمت نرم‌افزار شرکت روی یه وب‌اپلیکیشن کار می‌کنیم که بازار هدفش مشتریان متوسط و بزرگ (مثل بانک‌ها) هستند.

تا یادم نرفته این را هم بگم که اهل php نیستید ولی توانایی خاصی تو تولید نرم‌افزار (غیر از php) دارین حتما کامنت بزارین یا تماس بگیرید.

محیط کار دوست داشتنی من

خانم محق از من دعوت کردند که در مورد محیط کار دوست‌داشتنی‌ام و نیاز‌هایم به عنوان نیروی انسانی بنویسم. شروع کننده این بازی افشار محبی است و در مورد این بازی اینطور نوشته:

در این بازی هر کسی پنج تا موضوع غیر از موضوعات مالی را که فکر می‌کند کارفرمایش نمی‌داند یا به اهمیت آن واقف نیست و اگر بداند وضعیت بهتری ایجاد خواهد شد را عنوان می‌کند. موضوعات مالی به این دلیل استثناء شده‌اند چون که قاعدتاً همه مدیران و کارفرماها به حساسیت و اهمیت این موضوع واقفند. برای این که نتایج این «بازی» واقعی و قابل استفاده باشد، شرکت کنندگان باید برنامه‌نویس تمام وقت باشند. یعنی تنها کارشان برنامه‌نویسی و توسعه نرم‌افزار باشد نه این که دانشجو یا سرباز باشند یا مثلاً فقط سه روز در هفته کار کنند. علاوه بر این تحت استخدام یک شرکت باشند نه این که Freelance بوده یا به صورت پروژه‌ای کار کنند. در این بازی احترام هیچ کس نباید شکسته شود.

  • اول از همه دوست دارم همواره درگیر موضوعات جدید و چالش‌برانگیز باشم. موندن در یک سطح از توان فنی خیلی وحشتناکه.
  • موضوع مهم بعدی اینه که زمان کارم راحت باشه. گرم یا سرد نباشه. از نظر نور خوب باشه. و البته از سر و صدا دور. من قراره روزی هشت تا ده ساعت توی یه اتاق بشینم پس باید اونجا تا حد ممکن خوشایند باشه تا بتونم روی کارم تمرکز کنم.
  • داشتن همکاران خوب خیلی به رضایت من در کار کمک می‌کنه. کسانی که بتونی هرازگاهی باهشون بحث فنی بکنی و با هم روی موضوعات فکر کنید خیلی چیز خوبی می‌تونه باشه.
  • این که شرکت رفتارهاش بر مبنای اخلاق انسانی باشه به من کمک می‌کنه حس خوبی داشته باشم. این که بدونم شرکت من از روش‌های غیر اخلاقی قرار نیست درآمد کسب کنه و فعالیت‌هاش در راستای کمک به جامعه و مردم هست، یا حتی شرکتی هست که در کارهای بشر دوستانه فعالیت می‌کنه لذت کارکردن برای اون شرکت را خیلی خیلی زیاد می‌کنه.
  • این که اجازه داشته باشم بخشی از زمان روزانه‌ام را برای فعالیت‌های دلخواهم که ممکنه خیلی به وظایفم در شرکت ربط نداشته باشه اختصاص بدم. چیزایی که می‌تونه من را به آدم مفیدتری در شرکت یا اجتماع تبدیل کنه. مثلا اینکه بتونم برای یه ارائه در جلسه لاگ خودم را آماده کنم یکی از اون موارده.

البته این همه ماجرا نیست، واضح بودن وظایفم و حقوقم در شرکت، داشتن دسترسی به اینترنت خوب، اینکه محصول تولیدی من با ارزش باشه برای شرکت، داشتن ساعت کاری قابل انعطاف و … چیزای خوبی است که می‌تونه من را تشویق کنه توی یه شرکت بمونم و با بازدهی بیشتری کار کنم.

دوست دارم محمدرضا، مهدی، مصطفی، امید و بهروز هم نظراتشون را بنویسند و من بخونم! 🙂