<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های حامد عزیزی</title>
        <link>https://virgool.io/feed/@hamicoo</link>
        <description>سلام! من حامد هستم حدود 15 ساله که کد نویسی میکنم بیشتر به عنوان مهندس داده خیلی دوست دارم اگر دانشی دارم اونو به زبان فارسی هم به اشتراک بگذارم با شما</description>
        <language>fa</language>
        <pubDate>2026-06-16 21:53:25</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/54868/avatar/hbSHRg.jpg?height=120&amp;width=120</url>
            <title>حامد عزیزی</title>
            <link>https://virgool.io/@hamicoo</link>
        </image>

                    <item>
                <title>DBT توی مهندسی داده به چه درد میخوره</title>
                <link>https://virgool.io/@hamicoo/dbt-%D8%AA%D9%88%DB%8C-%D9%85%D9%87%D9%86%D8%AF%D8%B3%DB%8C-%D8%AF%D8%A7%D8%AF%D9%87-%D8%A8%D9%87-%DA%86%D9%87-%D8%AF%D8%B1%D8%AF-%D9%85%DB%8C%D8%AE%D9%88%D8%B1%D9%87-ccliorekotx7</link>
                <description>من بعد از اینکه این چند تا پست روی توی لینکدین خودم راجع به دی بی تی گذاشتم گفتم خوبه بیام یکم راجع بهش بگم اینجا.ابزار ساده و کاربردی برای تیم‌های داده  شاید اسمش رو شنیده باشید: Data Build Tool، یا همون DBT، ابزاری که می‌تونه کار با داده‌ها رو خیلی راحت‌تر کنه.چند سالی هست که بسیاری از تیم های داده ای که من توش کار میکنم و میکردم باهاش کار میکنن، اگه تو حوزه‌ای مثل بانکداری کار می‌کنید و مدام باید داده‌ها رو از سیستم‌های مختلف جمع‌آوری و آماده تحلیل کنید، DBT دقیقا همون چیزیه که لازم دارید.دی بی تی چی هست؟یه ابزار خیلی کاربردی که کارش تبدیل داده‌ها در انبار داده‌هاست. اما فرقش اینه که تمرکزش فقط روی بخش &quot;Transform&quot; هست، یعنی همون جایی که داده‌ها رو تمیز و آماده می‌کنیم. به زبان ساده، شما داده‌ها رو از منابع مختلف می‌گیرید و DBT کمک می‌کنه اونا رو مرتب کنید تا بشه راحت‌تر استفاده کرد.خیلی ساده می شه توش داده ها رو با پایتون ترنسفورم کرد روشون فانکشن نوشت که مثلا داده ها این شکلی بشن بعد از ترنسقورم اما برای من قابلیت تست دی بی تی از همه خفن تره.تست داده هامن مواردی که میشه توی دی بی تی براش تست نوشت رو با یه مثال اوردم. فقط قبل از اینکه بخونید تصور کنید با ابزار ای تی ال خودتون جقدر امکان داره که بشه به راحتی این شرایط رو پیاده سازی کرد.وجود مقادیر غیر NULL: شماره حساب مشتری (AccountNumber) نباید NULL باشد.یکتایی مقادیر در یک ستون: شماره تراکنش (TransactionID) باید یکتا باشد.درستی مقادیر بر اساس محدوده خاص: مبلغ واریزی (DepositAmount) باید بین 0 تا 1,000,000 باشد.مقدارهای مشخص از لیستی خاص: وضعیت تراکنش (TransactionStatus) فقط باید یکی از مقادیر &quot;Pending&quot;, &quot;Completed&quot;, یا &quot;Failed&quot; باشد.روابط بین جداول: هر CustomerID در جدول تراکنش‌ها باید در جدول مشتریان وجود داشته باشد.تست شروط سفارشی: سود تسهیلات (InterestRate) نباید از 25% تجاوز کند.تست کیفیت داده‌ها با سنجش داده‌های تاریخی: تعداد تراکنش‌های روزانه نباید نسبت به هفته قبل کاهش شدید داشته باشد.سازگاری داده‌ها با Schema: ستون تاریخ تراکنش‌ها (TransactionDate) باید فرمت YYYY-MM-DD داشته باشد.مطابقت داده‌ها با Regex: شماره کارت اعتباری باید با الگوی 16 رقمی مطابقت داشته باشد.تناسب ستون‌های مرتبط: مجموع مبالغ تراکنش‌ها در جدول تراکنش‌ها باید با مانده حساب مشتری در جدول حساب‌ها هماهنگ باشد.روندها یا تغییرات غیرعادی در داده‌ها: برداشت‌های نقدی بیش از 100,000 در روز برای یک مشتری به عنوان مورد غیرعادی ثبت شود.ایجاد data lineage یکی ترجمه فارسیشو برای من بنویسه لطفا :) این قابلیت به شکل خودکار وقتی شما در حال توسعه پکیج خودتون هستین ایجاد میشه و نیاز نیست کار خاصی براش بکنید به چه درد میخوره برای من بیشتر توی جلسات به کار آمده وقتی میخوام با دولوپرهای دیگه یا ذینفع ها صبحبت کنم اما توی بانکداری اینجا هم یک الزام هست که بدونیم دیتایی که به دست ما رسیده از کجا آمده و کجاها ممکنه تغییر کرده باشه.ویژگی‌های جالب DBTمدل‌سازی ساده: تو DBT، هر چیزی یه مدل هست که با SQL نوشته می‌شه. اینطوری همه چیز شفاف و قابل فهمه. مثلا تو یه بانک، می‌تونید یه مدل برای تراکنش‌های مشتری‌ها بسازید که نشون بده کدوم تراکنش‌ها مشکوک به تقلب هستن.WITH suspicious_transactions AS (
    SELECT transaction_id, account_id, amount, transaction_date
    FROM transactions
    WHERE amount &gt; 10000 -- فرض کنید تراکنش‌های بالای 10 هزار دلار مشکوک هستند
)
SELECT *
FROM suspicious_transactions;وابستگی‌ها رو مدیریت می‌کنه: فرض کنید دارید گزارش‌های مختلفی از تراکنش‌ها، موجودی حساب‌ها و پرداخت‌ها آماده می‌کنید. DBT خودش ترتیب اجرا رو مشخص می‌کنه و لازم نیست نگران باشیم که کدوم داده‌ها اول باید آماده بشن.models:
  my_project:
    accounts:
      materialized: table
    transactions:
      depends_on: 
        - accountsتست کیفیت داده: می‌تونید تست بذارید که مطمئن بشید داده‌هاتون درست و کامل هستن. مثلاً اگه موجودی حساب‌ها منفی شد، DBT سریع بهتون هشدار می‌ده.tests:
  - name: positive_balance
    condition: &amp;quotbalance &gt;= 0&amp;quotهمکاری تیمی راحت: با Git هماهنگ می‌شه، یعنی هر کسی تو تیم می‌تونه تغییرات رو ببینه و روی همون نسخه کار کنیم.چرا DBT به درد می‌خوره؟تصور کنید تو بخش داده‌های یه بانک بزرگ کار می‌کنید. باید داده‌های مربوط به تراکنش‌ها، تسهیلات و مشتری‌ها رو مرتب کنید. با DBT، می‌تونید یه پایپلاین درست کنید که هر روز این کارها رو اتوماتیک انجام بده. به جای اینکه وقتتون رو روی کارهای دستی بذارید، می‌تونید روی تحلیل داده‌ها تمرکز کنید. برای مثال، می‌تونید از داده‌های آماده شده، گزارشی از تعداد تراکنش‌های هر شعبه تهیه کنید.SELECT branch_id, COUNT(*) AS transaction_count
FROM transactions
GROUP BY branch_id;چه کسانی از DBT استفاده می‌کنن؟هر کسی که با داده‌ها سروکار داره! از تحلیلگران داده گرفته تا مهندسین داده. مخصوصاً اگه انبار داده‌هاتون توی ابزارهایی مثل Snowflake یا BigQuery باشه، DBT عالی جواب می‌ده.مشکلاتی که من باهاش داشتمیکی از مشکلاتی که داره اینه شما منبع و مقصد داده هایی که دارین روش کار تغییر انجام میدین می بایست یک دیتابیس باشه یعنی شما نمی تونید دیتا رو از دیتابیس اراکل بخونید و بیایید توی اسنوفلیک بریزین در واقع دی بی تی یک تولز فقط برای ترنسفورم و تست روی داده هاست. شما می تونید توی هر تولز ای تی ال خودتون مثل ایرفلو یا دیتافکتوری داده هاتونو لود کنید و با دی بی تی اونو ترنسفورم کنید.منبع برای شروع کارمن خودم اول مقداری مستندات خودشو از اینجا خوندم ولی حوصلمو بعد یه مدت سر برد رفتم سراغ آموزش و چندتایی دانلود کردم و به نظرم این آموزش از همه بهتر آمد.جمع‌بندیدی بی تی یه ابزار ساده ولی قدرتمنده که می‌تونه زندگی تیم‌های داده رو راحت‌تر کنه. تو بانکداری یا هر صنعت دیگه‌ای که نیاز به مدیریت حجم زیادی از داده هست، DBT کمک می‌کنه همه چیز مرتب و آماده باشه. با قابلیت‌هایی مثل تست داده‌ها، مدیریت وابستگی‌ها و ادغام با Git، DBT یکی از بهترین ابزارها برای تیم‌های داده محسوب می‌شه. اگه هنوز امتحانش نکردید، پیشنهاد می‌کنم همین امروز یه نگاهی بهش بندازید!</description>
                <category>حامد عزیزی</category>
                <author>حامد عزیزی</author>
                <pubDate>Thu, 09 Jan 2025 14:48:29 +0330</pubDate>
            </item>
                    <item>
                <title>جایگزین بهتر  Amazon AWS برای ایرانیان</title>
                <link>https://virgool.io/@hamicoo/%D8%AC%D8%A7%DB%8C%DA%AF%D8%B2%DB%8C%D9%86-%D8%A8%D9%87%D8%AA%D8%B1-amazon-aws-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A7%DB%8C%D8%B1%D8%A7%D9%86%DB%8C%D8%A7%D9%86-kfgzkosnu9ww</link>
                <description>سلام همه همراهاناز اون موقع ای که اسم زیر ساخت ابری آمازون AWS به گوشم خورد دنبال اینه بودم که بتونم چندتا سرویس بالا بیارم تا از دنیا عقب نباشم اما متاسفانه هر کاری میکردم به در بسته می خوردم. به شکل رسمی این زیر ساخت برای ایرانیان محدوده و من نتونستم حداقل راهی برای دور زدنش پیدا کنم در واقع ارزششو نداشت زیاد برای دور زدنش وقت بگذاری در صورتی که سرویس های خوبی دیگه ای هم هست که جز رقبای AWS آمازون هستند یکی از بهتریناشم سرویس Heroku هست.من قبلا این مقاله رو توی مدیوم منتشر کردم اما بی انصافیه که این محتوا توی ویرگول برای فارسی زبانا نباشهدیگه بریم سراغ اصل داستانتوی این مقاله قراره ما با استفاده از زبانی که خودتون بلدین یک وب سرویس بنویسیم و اونو به شکل کانتینر داکر روی هروکو پابلیش کنیم.چیز هایی قبل از شروع این آموزش شما نیاز دارین:۱- دانستین یک زبان برنامه نویسی برای انتشار یک سرویس مثل یک وب سرویس REST ( اما اگر در حال حاضر آمادگی نوشتنشو ندارین نگران نباشین فقط کافیه کدی که به زبان پایتون گذاشتمو کپی پیست کنین)۲- نصب داکر روی سیستم خودتون۳- ساخت یک اکانت رایگان در سایت Heroku۴- نصب Heroku CLI با توجه به سیستم عاملتونخودم سیستمم لینوکسی هست و دستوراتی که اینجا می نویسم بر همین اساسه شما اگر ویندوزیه کافیه معادلشو انجام بدین.اول یک دایرکتوری به نام پروژه جدیدمون ایجاد و دو فایل به اسامی که می نویسم.&gt; mkdir my_project 
&gt; cd my_project
&gt; touch main.py &amp;&amp; touch Dockerfileحالا با دستوری مثل nano یا vim برین و فایل main.py رو باز کنین قراره این فایل محتویات وب سرویس ما باشه.vim main.py https://virgool.io/p/kfgzkosnu9ww/%D8%AD%D8%A7%D9%84%D8%A7%DA%A9%D8%AF%D8%B2%DB%8C%D8%B1%D8%B1%D9%88%DB%8C%D8%AF%D8%B1%D9%88%D9%86%D8%A7%DB%8C%D9%86%D9%81%D8%A7%DB%8C%D9%84%DA%A9%D9%BE%DB%8C%D9%BE%DB%8C%D8%B3%D8%AA%DA%A9%D9%86%DB%8C%D9%86. from flask import Flask,jsonify
from datetime import datetime
import osmy_port = int(os.environ.get(“PORT”, 8030))
app = Flask(__name__)visit_cnt=0
@app.route(‘/’)
def hello_world():
 global visit_cnt
 visit_cnt+=1
 return jsonify(message=’Congrats! you have deployed your first web service’,
 time=datetime.now(),totoal_visit_count=visit_cnt)
if __name__ == ‘__main__’:
app.run(debug=False,host=’0.0.0.0&#039;,port=my_port)میریم سراغ بخش ساخت داکر ایمیجمونvim Dockerfileاگر راجع به ساخت داکر ایمیج توی داکر چیزی نمیدونین خلاص این میشه که ما قرار این وب سرویس فلسکی که نوشتیمو بزاریم درون یک ایمیج پایتون که بتونه به شکل یک کانتینر مستقل روی هر سروری ران بشه اصلا فلسفه کانتینر همینه !خوب حالا کافیه کدی که نوشتمو توی داکر فایلتون کپی پیست کنین و بعد ذخیرش کنین.FROM python:3.8.0b4-alpine3.10
RUN mkdir webservice
WORKDIR /webservice
COPY ./ ./
RUN pip install flask
EXPOSE 8030
CMD python main.pyخیلی خلاصه این داکر فایل میاد دستور ساخت یک ایمیج میده که بر پایه python:3.8.0b4-alpine3.10 است یعنی یک نسخه از لینوکس خیلی کم حجم آلپاین که یک مفسر پایتونم توش برای ما آماده است. کافیه فایل هامون رو درونش کپی کنیم و بعد دستور اجرای کد رو بهش بدیم. به همین سادگی !با دستور ذیل ایمیجمون ساخته میشه و اماده میشه یک کانتینر ازش بسازیم.&gt; docker build -t my_app .حالا قبل اینکه این سرویس رو ببریم توی heroku قبلش تست کنیم ببینیم این درست کار میکنه یا نهکافیه پورت 8030 این ایمجتون رو به پورت دلخواهتون مپ کنین تا بتونین خروجیشو ببینین.&gt; docker container run -d — name my_first_webservice -p 80:8030 my_app من پورت ۸۰ رو مپ کردم حالا هم میتونین مرورگرتون رو باز کنین و 0.0.0.0 رو بزنین یا اینکه &gt; curl 0.0.0.0بزنین و اگر وب سرویس بهتون جواب ذیل رو داد یعنی اماده میشیم بریم برای بردنش روی ابرها !{  “message”: “Congrats! you have deployed your first web service”,  “time”: “Mon, 23 Sep 2019 23:45:36 GMT”,  “totoal_visit_count”: 1 }خوب همینطور که قبلا گفتم پیش نیاز اموزش این است که شما اکانت هروکو رو ساخته باشین و CLI شم نصب کرده شده باشه. حالا اگر اینا امادست میریم سراغ ادامه آموزش و دستورات ذیل رو توی خط فرمانمون می نویسیم&gt; heroku loginبعد از لاگین باید یک اسم اپلیکیشن بدیم که یونیک هست توی کل سیستم شما براکت رو حذف کنید و به جاش اسم اپلیکیشن دلخواه خودتونو بنویسین&gt; heroku create [flask-with-heroku]و بعد لاگین برای پوش کردن کانتینر&gt; heroku container:login 
&gt; heroku container:push web --app [flask-with-heroku]حتما حتما یادتون باشه اگر در این مرحله به ارور خوردین احتمال خیلی زیاد توی مسیر داکر فایلی که ساختیم نیستین یعنی باید مسیر جاریتون همون my_project باشهدیگه داریم به پایانش نزدیک میشیم با دستور ذیل کانتینر دپلوی شده خودمون رو ریلیز میکنیم.&gt; heroku container:release web — app [flask-with-heroku]حالا کافیه روی لینکی که اپلیکیشنتون روی پابلیش شده کلیک کنینhttps://[your-application-name].herokuapp.com/نمونه نهایی پابلیش شده این پروژه رو میتونین از اینجا ببینین.امیدوارم برای دوستان عزیز مفید واقع شده باشه.ارتباط با من از طریق لیندکدین</description>
                <category>حامد عزیزی</category>
                <author>حامد عزیزی</author>
                <pubDate>Thu, 26 Sep 2019 10:18:18 +0330</pubDate>
            </item>
                    <item>
                <title>یکم بیشتر راجع به ebook reader</title>
                <link>https://virgool.io/@hamicoo/%DB%8C%DA%A9%D9%85-%D8%A8%DB%8C%D8%B4%D8%AA%D8%B1-%D8%B1%D8%A7%D8%AC%D8%B9-%D8%A8%D9%87-ebook-reader-b7xl9h53wr4p</link>
                <description>امروزه کمتر جنبه ای از زندگی انسان قرن 21 را می توان یافت که تکنولوژی آن را متحول نکرده باشد. افراد زیادی در دنیا وجود دارند که به مطالعه کتاب، روزنامه یا  مجلات  علاقه زیادی دارند و از همه مهم تر می خواهند در هرزمان و در هرکجا بتوانند مطالب مورد علاقه خود را مطالعه کنند. تکنولوژی ابزار جدیدی را به آنها معرفی می کند که به آن کتاب خوان دیجیتال گفته می شود.فرآیند تبدیل کتاب های کاغذی به کتاب های الکترونیکی، بسیار پیش تر از پیدایش کتاب خوان های دیجیتال در دنیا آغاز شده بود، در واقع همواره کارشناسان دنبال راه کاری بودند که بتوان حجم فیزیکی داده ها و اطلاعات را کم کرد و آن را به دنیای صفر و یک ها منتقل نمود .بسیاری از ما کتاب ها و مطالب زیادی را  از طریق کامپیوتر و در قالب PDF روزانه مشاهده و مطالعه می کنیم اما واقعیتی که وجود دارد، خواندن یکی کتاب یا یک روزنامه از طریق صفحات نمایشگر رایانه ،چشم را بعد از مدت بسیار کوتاهی خسته می کند و بسیاری از افراد راغب نیستند تا از این راه کتاب های مورد علاقه خود را مطالعه کنند و به ناچار به فکر خرید کتاب و یا چاپ کردن آن مطلب، از طریق چاپگر می افتند.اما کتاب خوان های دیجیتال چه مزیتی دارند که ما از آن ها استفاده کنیم؟همان گونه که میدانید هر صفحه نمایشی از سلول های کوچکی به نام پیکسل تشکلیل شده است که با کنار هم قرار گیری این خانه های کوچک صفحه نمایش بوجود می آید.پیکسل ها با تغییر رنگ خود می توانند در کنار هم یک تصویر را بسازند، در LCD ها هر پیکسل خروجی نور ساخته شده توسط عوامل پشت پیکسل هستند و قرار گیری این نور ها کنار هم تصویر را تشکیل میدهد. و در نهایت از هر نقطه از این صفحات نمایش پرتو های نوری بیرون می آید که شما می توانید آن ها را بدون اینکه به نور محیط نیاز داشته باشید ببینید.در این عکس که بزگنمایی از پیکس های یک ال سی دی است به وضوح پیداست که هر سلول با تولید رنگی همراه با نور زمینه آن را قابل مشاهده می کند.بسیاری از فعالان حوزه ابزارهای الکترونیکی با در نظر گرفتن مشکلی که افراد در  مطالعه صفحات نمایش رایانه های امروز داشتند، به فکر تولید صفحاتی افتادند که کاملا شبیه کاغذ است و روشنایی ندارد،که به آن اصطلاحا صفحات نمایش  E-Ink گفته می شود.ای اینک یا به زبان خودمان جوهر الکترونیک فناوری است که در سال 1997 ! پس از انجام تحقیقات در دانشگاه ام آی تی توسط محققان ابداع و ساخته شد.همانطور که در شکل زیرین میبینید در حالت صفحات سیاه سفید، قسمت 2، با اعمال تغییرات در بار مثبت و منفی در لایه زیرین صفحه، باعث می شود رنگ دانه های جوهر مانند که در زیر آن وجود دارند جذب صفحه شده و تک تک آنها سازنده یک حرف از کتاب یا مجله شما باشند. دقیقا همانند جوهری که به روی کاغذ می چسبد و شما به شکل کتاب آن را مطالعه می کنید. در این تکنولوژی چشم انسان بسیار راحت بوده و برعکس ای سی دی دچار آزار و درد نمی شود .جالب است که مانند کتاب‌های کاغذی، کتابخوان‌های دیجیتال را هم می‌توان نشانه‌گذاری کرد. با استفاده از این قابلیت می‌توانید صفحه یا فصل مورد نظرتان را نشانه بگذارید و هر زمان که بخواهید سریعا به آن قسمت از کتاب مراجعه کنید.علاوه بر این، با استفاده از فرهنگ لغت موجود در آنها می‌توانید معنی کلمه‌ها و عبارات ناآشنا را هنگام مطالعه بیابید.گاهی به بخشی از مطالب یک کتاب نیاز پیدا می‌کنید و حتی نام کتاب هم یادتان نمی‌آید. اینجاست که کتابخوان‌های الکترونیک به دردتان می‌خورد. با این محصولات یافتن مطالب دلخواه در کتابخانه‌ سیار بسیار ساده است. مثلا با مدل‌هایی همچون کیندل  (Kindle) و سونی(Sony) به‌راحتی می‌توانید مطلب مورد نظر را میان صدها کتاب جست‌و‌جو و پیدا کنید.در کتابخوان‌های الکترونیک مجبور نیستید فونت ریز یا درشت کتاب را تحمل کنید! شما می توانید اندازه حروف را مطابق با سلیقه خودتان مشخص کنید.مانند کتاب‌های کاغذی، کتابخوان‌های دیجیتال را هم می‌توان نشانه‌گذاری کرد. با استفاده از این قابلیت می‌توانید صفحه یا فصل مورد نظرتان را نشانه بگذارید و هر زمان که بخواهید سریعا به آن قسمت از کتاب مراجعه کنیداز امکانات جانبی دیگری که در نمونه های جدید تر کتاب خوان ها اضافه شده است ارتباط از طریق شبکه بیسیم ،استفاده از کتاب خانه های دیجیتال که شما می توانید با پرداخت هزینه بسیار پایین تری نسبت به اصل قیمت کتاب، آن را در کتابخوان خود مطالعه کنید و همچنین اضافه شدن قلم برای یادداشت مطالب خود در سر کلاس درس و یا نکات خاصی که در هنگام خواندن یک کتاب یا مجله دوست دارید آن را یادداشت کنید.یک کتابخوان مناسب چه ویژگی هایی دارد؟در کنار تمام ویژگی هایی که در بالا گفته شد، سایز و نوع صفحه‌نمایش، یکی از مهم‌ترین فاکتورها در یک کتابخوان ایده‌آل، وزن آن است. در میان کتاب خوان های رایج در بازار، نمونه‌هایی که از صفحه‌نمایش E-Ink بهره می‌برند، اغلب از وزن کمی برخوردارند معمولا بین 300 تا 400 گرم هستند اما مدل‌های رنگی، با توجه به بدنه متفاوت یا باتری بزرگ‌تر، وزن بالایی برای مطالعه در ساعات متمادی دارند.توجه داشته باشید که می‌خواهید با کتابخوان به مطالعه کتاب بپردازید. خسته شدن دست، به دلیل نگه داشتن مداوم یک کتابخوان در حالتی ثابت، فاکتوری منفی برای یک کتابخوان محسوب می‌شود. پس اگر کسی هستید که زیاد کتاب می‌خوانید، هنگام انتخاب کتابخوان مد نظر خود، وزن کم را فاکتوری موثر و مهم به حساب آورید.اما در مورد وضعیت باتری کتابخوان ها باید گفت  اغلب کتابخوان‌ها به طور معمول، حداقل تا چند روز نیازی به شارژ مجدد ندارند. حتی برخی از مدل‌ها ادعا می‌کنند که تا دو ماه از شارژ مجدد بی‌نیازند اما میزان استفاده روزانه، وضعیت کانکشن بی‌سیم و نور پس‌زمینه در کتابخوان‌های رنگی، از عوامل مهم در تمام شدن شارژ باتری کتابخوان است.قیمت کتابخوان های بازاردر حال حاضر کتابخوان‌های دیجیتال شرکت‌های سونی، کیندل، نوک، Concord، Onyx و iRiver را می‌توان در بازار ایران پیدا کرد.همچنین کتاب خوان های ساخت چین که دیجیکالا وارد کرده و برند فیدیبوک رو روی اون گذاشته بازخورد بدی نداشته، دو نفر از دوستان بنده این محصول رو دارند و تا به حال مشکل خاصی رو باهاش تجربه نکردن. در کل قیمت کتاب خوان ها از  حدود 900 هزار تومان شروع شده و تا بالای سه میلیون تومان بر اساس ویژگی و  رنگی بودن آن متغییر است.خودم به شخصه 5 سالی است که از کیندل آمازون استفاده می کنم و تا به حال هیچ مشکلی با زبان فارسی و نمایش پی دی اف فارسی نداشتم اما مهمترین نقطه قوتش برای من نگهداری شارژ آن بوده که حدود دو هفته ای با مطالعه روزی یک ساعت برای من شارژ نگه می دارد.</description>
                <category>حامد عزیزی</category>
                <author>حامد عزیزی</author>
                <pubDate>Sat, 29 Jun 2019 17:29:06 +0430</pubDate>
            </item>
                    <item>
                <title>برای معتادین به شبکه های اجتماعی !</title>
                <link>https://virgool.io/@hamicoo/%D8%A8%D8%B1%D8%A7%DB%8C-%D9%85%D8%B9%D8%AA%D8%A7%D8%AF%DB%8C%D9%86-%D8%A8%D9%87-%D8%B4%D8%A8%DA%A9%D9%87-%D9%87%D8%A7%DB%8C-%D8%A7%D8%AC%D8%AA%D9%85%D8%A7%D8%B9%DB%8C-zlyxntnkiait</link>
                <description>یکی از مهمترین تحولات فضای مجازی بروز و ظهور شبکه های اجتماعی است. شبکه اجتماعی شبکه ای از انسانهاست که به عضویت یک سایت در می آیند و بخشی از زندگی خود را با دیگران به اشتراک می گذارند. شبکه های اجتماعی گوناگونی در اینترنت وجود دارند تا به این نیاز اصلی انسان &quot;یعنی برقراری ارتباط&quot; پاسخ بدهند، اما متاسفانه عده ای از افراد به دلیل جذابیت های خاصی که این محیط ها دارند به آنها اعتیاد پیدا کرده و بسیاری از زمان روزانه خود را در این فضا می گذرانند.وقتی به شبکه های اجتماعی توجه می کنیم و ارتباطاتی که میتواند وجود داشته باشد، مهم است بدانیم از دیدگاه تحلیل رفتار  متقابل که نوعی روش برای نگاه  به انسان و روان درمانی رفتار  وی است.سه نیاز اساسی در روابط بین انسان ها با یکدیگر به صورت پیوسته در حال ارضا شدن است:1- نیاز به تحریک شدن از نظر ذهنی و عاطفی برای مثال در همین حال که شما این مقاله را می خوانید ممکن است شما از نظر ذهنی تحریک شوید و به آن فکر کنید. 2- نیاز به شناخته شدن، اینکه من وجودم به عنوان یک فرد با تمام ویژگی های منحصر به فردی که دارم شناخته شود.3- نیاز به ساخت دادن به زمانی که در حال سپری کردن آن هستیم، که در آن دو نیاز قبلی یعنی نیاز به تحریک شدن و نیاز به شناخته شدن برطرف می شود.حالا شما تصور کنید که یک فرد در فضای مجازی چطور می تواند این نیاز هایش را برآورده کند؟انسان می تواند در این فضا با داشتن ارتباطات وسیع، که بسیار گسترده تر از ارتباطات فرد به فرد در دنیای واقعی است، از نطر ذهنی و یا عاطفی با دیگران در ارتباط قرار بگیرد، برای مثال عکس و یا نوشته ای را با دیگران به اشتراک می گذارد و تمایل دارد که افراد نظر خود را نسبت به آن بیان کنند ، و همچنین تلاش می کند آنگونه که خودش تمایل دارد شناخته شود که در مجموع به زمان خود به این وسیله ساخت می دهد.خیلی از این نیاز ها در ارتباطات دنیای مجازی خصوصا در شبکه های اجتماعی به واسطه ماهیت آن شروع به ارضا شدن می کند حتی برای افرادی که از روابط اجتماعی ضعیف تری در دنیای واقعی برخوردار هستند یک موقعیت بسیار مناسب است تا بتوانند از این طریق به نیازهای طبیعی خود پاسخ بدهند.اعتیاد به شبکه های اجتماعی می تواند نوعی پوشش باشد بر روی مسائل روانی دیگری که در اینجا بصورت عادتی و اعتیاد گونه ، فرد با حضور در این فضا آن را پنهان می کندزمانی ما می توانیم به اعتیاد، خصوصا اعتیاد در فضای مجازی اشاره ای بکنیم که فرد برای فرار از نوعی اضطراب یا احساس ناخوشایند درونی به طور وسواس گونه به ارتباط در چنین شبکه های می پردازد. اعتیاد چه در فضای مجازی باشد و یا به هر شکل دیگر ، می تواند نوعی اجتناب از برخورد با واقعیت های باشد، که درون سطح ناخوداگاه فرد، سرکوب شده است.برای مثال ممکن است که فردی در فضای مجازی موقعیت اینکه ارتباطات گسترده با افراد برقرار کند را داشته باشد و می تواند با دوستانش در گفتگو قرار بگیرد و خودی نشان بدهد و نیاز به شناخته شدنش را نیز به گونه ای ارضا کند، ولی در دنیای واقعی به واسطه موانعی که وجود دارد از نظر خانواده ، فرهنگ و یا نوع نگاه خود، فرد نتواند این ارتباطات را به راحتی و درست برقرار کند، بنابراین آن نیاز اساسی انسانی وی که نیاز به شناخته شدن، دیده شدن است.در این شبکه های اجتماعی در حال ارضا شدن است در حالی که ممکن است، اگر بخواهد  در محیط اجتماعی خودش و یا خانوده به رفع این نیازها بپردازد با موانعی روبه رو باشد.  بنابراین فرد تصمیم می گیرد به ارتباطات خود در اینگونه از شبکه ها ادامه دهد و در نهایت چیزی که اتفاق می افتد این است که او نوازش می گیرد ، دیده می شود و یا آنطور که خود دوست دارد به عنوان یک فرد شناخته می شد، بنابراین مایل است که آن را بیشتر و بیشتر و بیشتر ادامه دهد.اصولا در اعتیاد به شبکه های اجتماعی ما با فردی روبه رو هستیم که وقت زیادی از شبانه روز خودش را در ارتباطات و سر زدن به صفحات دیگران به سر می برد، که این وقت و انرژی گذاشتن فرد در این گونه از شبکه ها، مانع از این می شود که به کارهای اصلی خود رسیدگی کند، تا جایی که نبود وی در این فضا و نداشتن ارتباطات مجازی و یا سر زدن به  عکس ها و نوشته های دیگر دوستان در درون او به صورت یک عادتی در می آید که نمی تواند آن را کنار بگذارد و مانع رسیدگی به بقیه امور زندگیش می شود.از سوی دیگر اعتیاد به شبکه های اجتماعی می تواند نوعی پوشش باشد بر روی مسائل روانی دیگری که در اینجا بصورت عادتی و اعتیاد گونه ، فرد با حضور در این فضا آن را پنهان می کند. برای مثال برای فردی که دچار اضطراب است و به واسطه اضطراب خود، مدام دچار روابط ناخوب و ناسالم می شود،  تصمیم بگیرد ( البته به صورت ناخود آگاه) که با حضور افراطی در شبکه های اجتماعی به سمت دیده شدن،و ساخت دادن زمان خود پیش برود و حالا اینکه چقدر حضور در این شبکه ها را ادامه می دهد و چقدر درگیر آن می شود و پاداش میگیرد، می تواند ابعاد این دسته از اعتیادها را بیشتر مشخص کند.در واقع همیشه وقتی موضوع اعتیاد در تمامی زمینه ها مطرح می شود ما با نوعی رفتار وسواسی طرف هستیم که فرد نمی تواند آن را کنترل کند بنابراین تمایلاتی در درون وی هست که رفتارهای او را به سمتی پیش می برد که اگر آن کار را نخواهد انجام دهد غیر قابل اجتناب خواهد بودهر فناوری و دست آورد انسانی علی رقم نکات مثبت آن در صورت افراط در استفاده و به نوعی اعتیاد در فرد باعث آسیب زدن به او و حتی در صورت فراگیر بودن آن ، باعث آسیب به جامعه می شود.بسیاری از کارشناسان در حوزه روانشناسی بر این باورند حضور در شبکه های اجتماعی تا جایی به فرد آسیب نمی زند که از فعالیت های روز مره و کارهای روزانه خود بازنماند و ارتباطات فیزیکی و اجتماعی خود را به واسطه حضور در این شبکه ها کم نکند. بنابراین می توان با برنامه ریزی بهتر و رعایت اعتدال در استفاده از فناوری ، آن را در جهت ایجاد آسایش و آرامش بیشتر در زندگی به کار گرفت.</description>
                <category>حامد عزیزی</category>
                <author>حامد عزیزی</author>
                <pubDate>Sat, 29 Jun 2019 17:14:16 +0430</pubDate>
            </item>
                    <item>
                <title>آشنایی با فناوری موشن کپچر</title>
                <link>https://virgool.io/@hamicoo/%D8%A2%D8%B4%D9%86%D8%A7%DB%8C%DB%8C-%D8%A8%D8%A7-%D9%81%D9%86%D8%A7%D9%88%D8%B1%DB%8C-%D9%85%D9%88%D8%B4%D9%86-%DA%A9%D9%BE%DA%86%D8%B1-jsj3i2negzqz</link>
                <description>ضبط حرکت (Motion capture)، ردیابی حرکت و mocap اصطلاحاتی می باشند که برای توصیف جنبش یا حرکت افراد و اشیاء در صحنه سه بعدی مورد استفاده قرار می گیرند.یقینا تا کنون فیلم ها و پویانمایی های گوناگونی را در سینمای هالیوود و حتی اخیرا سینمای خودمان دیده اید که از جلوه های ویژه جذاب و بسیار زیبا استفاده می کنند. این جلوه های ویژه کاملا شبیه دنیای واقعی هستند و حرکات کاراکترها شبیه به حرکات آن ها در دنیای واقعی است.از این گونه فیلم ها می توان به فیلم های آواتار و انیمیشن های بیوولف، ماجراهای تن تن و حتی بسیاری از بازی های ویدئویی همچون سرزمین ناشناخته اشاره کرد.همانطور که می دانید بعد از ابداع فناوری ضبط سه بعدی حرکات و انتقال آن به رایانه، فیلم، بازی های رایانه ای و خصوصا انیمیشن ها پا به دنیای جدیدتری گذاشتند. در واقع این فناوری، کارگردانان را توانا می ساخت که بتوانند سکانس هایی با حداکثر کیفیت و شبیه بودن به حرکات افراد در دنیای واقعی بسازند و بیننده کاملا احساس می کند حرکات این کاراکترها کاملا مشابه حرکات افراد در دنیای واقعی است.اما اگر بخواهیم تعریف دقیق تری از موکپ داشته باشیم می توان گفت، موشن کپچر به مجموعه تکنیک های اطلاق می شود که اجازه می دهد حرکات یک عنصر واقعی (که لزوما انسان نیست) ضبط، و به یک محیط سه بعدی در رایانه منتقل کرد. علاوه بر اینکه امروزه بیشتر بازی های رایانه ای از این فناوری برای ساخت بازی ها جذاب تر و مهیج تر استفاده می کنند در عرصه پزشکی و توانبخشی نیز کاربردی خاص دارد. برای مثال کودکی که مشکل حرکتی دارد پزشکان معمولا در نهایت با ضبط حرکات مفاصل آن به این شیوه، فرد را درمان می کنندانواع موکپموشن کپچر به چند صورت مختلف بسته به نیاز و محیط انجام می شود، اما از انواع می توان به 1- نوری 2- مکانیکی3- الکترومغناطیسی اشاره کرد. معمولا در صنعت سینما و ساخت انیمشن ضبط تصاویر به صورت نوری  بیشترین کاربرد را نسبت به سایر فناوری ها دارد اما در بعضی مواقع نمی توان به صورت اپتیک یا نوری تصاویر را منتقل کرد که در ادامه گفته مشود.موشن کپچر چگونه عمل می کند؟شاید در بعضی از پشت صحنه های ساخت انیمشن یا فیلم ها دیده باشید که شخصیت های آن بر روی بدن خود توپ های سفید رنگی را چسبانده اند، در واقع این توپ ها سنسورهای منعکس کننده نوری  هستند که حرکات ان ها توسط دوربین های مخصوص که نسبت به حرکات آن ها حساس هستند، ضبط شده و به محیط سه بعدی انتقال پیدا می کند.واضح است که معمولا این توپ ها در مفاصل و دست های شخص جایگزین می کنند تا حرکات به طور کامل و طبیعی به رایانه منتقل شود.اما پس از اینکه حرکات فرد توسط دوربین ها به رایانه منتقل شد نوبت به آن می رسود این حرکات بر روی کاراکتر مورد نظر در دنیای مجازی تطبیق داده شود. در واقع مفاصل فرد بازیگر برو روی کاراکتر ساخته شده برده شود و سرعت حرکات تنظیم شود.موشن کپچر مکانیکی و الکترومغناطیسیدر حالت مکانیکی فرد یک سری سنسورهای حرکتی را برو روی بدن خود همانند یک لباس نصب می کند و در این حالت دیگر نیازی به دوربین های ثبت حرکات نیست زیرا حرکت خود همین سنسورها به رایانه منتقل می شود و به دلیل کم هزینه بودن کاربرد زیادی را مواقعی که سازنده می خواهد هزینه کمی را انجام دهد دارد.اما در سیستم ضبط حرکت الکترومغناطیسی بر روی لباس مخصوصی که فرد می پوشد فرستنده های الکترونیکی متصل می کنند که امواج آن توسط گیرنده های آن دریافت و پس از یک پروسه خاص به رایانه منتقل می شود. همه این روش های که بیان شد بسته به نیاز کارگردان و نوع صحنه ها انتخاب می شود. برای مثال در فیلم ارباب حلقه ها بیشتر صحنه های فیلم با استفاده از سنسورهای الکترومغناطیسی ساخته شد.دیگر کاربردهاکاربرد این فناوری فقط به عرصه سینما و انیمشن منتهی نمی شود بلکه امروزه کاربردهای زیادی در عرصه های مختلف دارد. علاوه بر اینکه امروزه بیشتر بازی های رایانه ای از این فناوری برای ساخت بازی ها جذاب تر و مهیج تر استفاده می کنند در عرصه پزشکی و توانبخشی نیز کاربردی خاص دارد. برای مثال کودکی که مشکل حرکتی دارد پزشکان معمولا در نهایت با ضبط حرکات مفاصل آن به این شیوه، فرد را درمان می کنندحتی در عرصه ورزشی نیز در درجات حرفه ای از حرکات فرد ورزشکار موشن کپچر تهیه می شود و و مربیان به این وسیله حرکات اشتباه ورزشکاران خود و ضعف عضلانی آنان پی می بردند.</description>
                <category>حامد عزیزی</category>
                <author>حامد عزیزی</author>
                <pubDate>Sat, 29 Jun 2019 17:06:14 +0430</pubDate>
            </item>
                    <item>
                <title>کدام بازی رایانه ای مناسب است؟</title>
                <link>https://virgool.io/@hamicoo/%DA%A9%D8%AF%D8%A7%D9%85-%D8%A8%D8%A7%D8%B2%DB%8C-%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87-%D8%A7%DB%8C-%D9%85%D9%86%D8%A7%D8%B3%D8%A8-%D8%A7%D8%B3%D8%AA-wyf74beharev</link>
                <description>من سال ۹۱  نویسنده حوزه علم و دانش تبیان بودم چندین مقاله در آن زمان نوشتم که سعی میکنم چندتا از اونارو توی ویرگول هم بگذارم. بازی‌های رایانه‌ای یکی از سرگرمی‌های کودکان، نوجوانان، جوانان و حتی بزرگسالان در جهان امروز ماست. بازی هایی که دیگر محدود به رایانه نیست و کنسول های بازی متنوعی برای سرگرم کردن افراد هر ساله به بازار عرضه می شوند. این بازی‌های مهیج و پرجاذبه ساعت‌ها کودک و نوجوان ما را در مقابل صفحه نمایشگر قرار می‌دهد و او را از دنیای واقعیات به عالم تخیلات فرو می‌برد. اما نکته ای که در اینجا حائز اهمیت است این است که پدر و مادر چه وظیفه‌ای در انتخاب درست بازی رایانه‌ای برای فرزندان خود دارند و این‌که چطور می توانند بازی رایانه‌ای مناسب را انتخاب کنند.بازی های رایانه‌ای اصولا توسط افرادی طراحی می شود که از رشته های مختلف مانند روان شناسی ، گرافیست، داستان نویس و دیگر رشته ها در کنار هم بازی رو طراحی میکنند و یک هدف دارند که چگونه ذهن فرد بازیگر رو درگیر بکنند و او را در دنیایی که آن ها می سازند وارد کنند.بنابراین شرکت های معتبری که بازی های رایانه ای می سازند به سن مخاطب، جنسیت،و در چه سطح از تحصیلات و آگاهی که مخاطبشان قرار دارد،  بازی رو بسته به گرو های سنی طراحی می کنند که علاوه بر سرگرمی و پر کردن اوقات فراغت بتواند از نظر آموزشی و یاد دادن توانایی حل مسئله به افراد کمک کند.این نکته را به یاد داشته باشید یکی از فواید بازی رایانه‌ای مناسب برای فرزند شما دادن توانایی حل مسئله به آنهاست.احتمالا برای شما این مساله پیش آمده که قصد دارید برای فرزندتان یک دوچرخه بخرید، مسلما سعی می‌کنید دوچرخه‌ای را خریداری کنید که متناسب با سن او باشد. یقینا اگر دوچرخه‌ای که اندازه آن، حتی کمی بزرگتر از فرزند شما باشد را انتخاب کنید به فرزند خود آسیب وارد می کنید زیرا وسیله بازی رو برای او خریدید که مناسب سن او نیست و باید پیامد و آسیب های آن را نیز بپذیرید.اینکه کودکان ما چه بازی هایی رو انجام میدن و یا چه بازی براشون مناسبه این کاملا برمیگرده به اینکه پدر و مادر چقدر اطلاع دارند از انواع بازی ها و رده بندی هایی که در این زمینه وجود دارد.خوبه که والدین وقتی می خواهند برای فرزندان خود بازی رو مشخص کنند و یا اینکه خودشان برای وی بازی رو بخرند به پشت جلد لوح های فشرده بازی و رده بندی سنی آن ها توجه کنند.سیستم‌هایی که برای رده بندی افراد در جوامع وجود دارد، نمایانگر الگوهای کنش و کنش متقابل در آن فرهنگ‌هاست. بر این اساس نظام رده بندی سنی بازی های رایانه‌ای در ایران با توجه به فرهنگ جامعه ایران و شرایط و ارزش های خاص آن طراحی شده که جامع‏نگری و جزیی‏نگری، دو اصل مهم در تبیین معیارها بوده است.با توجه به این مسائل گروه‌های سنی در هشت معیار گفتار نامناسب، تبعیض، ترس، خشونت، قمار و شرط بندی، مسائل جنسی، مواد مخدر، مشروبات الکلی و دخانیات، نقض ارزشها مورد بررسی قرار می‌گیرد. پس پدر و مادرها از این جهت که آیا بازی که تهیه می‌کنند مشکلی برای فرزند خود دارد یا خیر می توانند با خیال آسوده بازی را بخرند.پس تعیین نوع بازی، زمان انجام بازی، گذاشتن این زمان به عنوانی سیستمی پاداش گونه برای فرزندتان و همچنین هویتی که فرزندتان در آن بازی می‌گیرد به عنوان رهنمونی برای والدین برای شناخت بهتر ابعاد شخصیتی فرزندتان می تواند مد نظر قرار بگیردخوشبختانه در کشور ما بنیاد ملی بازی های رایانه برای اولین بار در خاورمیانه یک نظام رده بندی سنی بازی های رایانه‌ای را با نام ESRA طراحی و اجرایی نموده است و هدف اصلی از این رده بندی سنی بازی های رایانه ای، مشخص کردن بهترین و صحیح ترین سن برای انجام یک بازی ویدیویی مشخص است. بهترین سن یعنی سنی که در آن، بازی هیچ آسیب روانی و رفتاری نداشته و به ارتقاء و رشد مخاطب کمک می‌نماید.بنابراین در سنین پایین تر آنقدر که والدین مسئول تربیت و دیگر موارد زندگی فرزند خود هستند در این زمینه نیز نقش مهمی را دارند. برای مثال ممکن است نوعی از بازی های فکری که بیشتر پدر مادرها فکر میکنن می تواند بازی خوبی برای فرزندشان باشد را انتخاب می کنند و در حالی که این بازی مناسب افراد دوازده سال به بالا می باشد و آن را برای بچه هفت ساله خود می خرند و نتیجه ای که این بازی برای فرزندشان دارد ناکامی است.زیرا کودک در فضای قرار می گیرد و تلاش می کند که به حل مسئله بپردازد  که محیط آن برای سن او طراحی نشده است، در اینجا نه تنها این کودک پاداشی نمیگیرد بلکه به نوعی حس ناامیدی در حل مسائل در او شکل میگیرد و  می تواند در اعتماد به نفس وی نیز تاثیر داشته باشد.در عین حال بعضی از بازی ها دارای صحنه های خشن و تحریک آمیز است .ممکن است برخی روان شناسان بگویند :گاهی اوقات افراد در بازی های خشن به ابراز و ارضا خشمی می پردازند که در محیط بیرون توانایی و امکان بروز آن را ندارند. اما طبق آخرین تحقیقات خشونت در فیلم و بازی به ضرر بچه هاست.بهتر است با انتخاب بازی مناسب با جنس و سن فرزندمان و اطلاع از محتوای بازی از بروز و رشد رفتار ناشایست در فرزندانمان جلوگیری و حتی به رشد بهره هوشی در آنان کمک کنیم.</description>
                <category>حامد عزیزی</category>
                <author>حامد عزیزی</author>
                <pubDate>Sat, 29 Jun 2019 16:35:24 +0430</pubDate>
            </item>
            </channel>
</rss>