اذهب إلى المحتوى

عبدالهادي الديوري

الأعضاء
  • المساهمات

    368
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    22

كل منشورات العضو عبدالهادي الديوري

  1. يُمكنك أن تطبّق الاستيثاق البسيط بالـ HTTP بطريقتين: الأولى، فقط بإضافة وسيطة Rack::Auth::Basic في سلسلة معالجة الطّلبات مع تعليمة use : require 'sinatra' use Rack::Auth::Basic, "Restricted Area" do |username, password| username == 'admin' and password == 'admin' end get '/' do "You're welcome" end get '/foo' do "You're also welcome" endالمثال أعلاه يقوم بحجب جميع العروض والمسارات إلّا عند إدخال اسم المُستخدم "admin" و كلمة المرور "admin". الطّريقة الثّانيّة، تصلح إذا كنت ترغب بحماية عناوين URL معيّنة فقط في التّطبيق، أو إذا كنت ترغب بجعل الاستيثاق أكثر تعقيدا، والطّريقة تكون باستعمال شيفرة كالتّالي: require 'sinatra' helpers do def protected! return if authorized? headers['WWW-Authenticate'] = 'Basic realm="Restricted Area"' halt 401, "Not authorized\n" end def authorized? @auth ||= Rack::Auth::Basic::Request.new(request.env) @auth.provided? and @auth.basic? and @auth.credentials and @auth.credentials == ['admin', 'admin'] end end get '/' do "يُمكن للجميع أن يرى هذه الصّفحة" end get '/protected' do protected! "مرحبا بك، لقد قمت بالاستيثاق بنجاح" end
  2. يُمكنك القيّام بالأمر باستعمال المعين Rack::Utils كالتّالي: helpers do def h(text) Rack::Utils.escape_html(text) end endالآن تجاوز الـ HTML كالتّالي: <%= h scary_output %>
  3. يُمكنك إرسال البريد الإلكتروني باستعمال جوهرة pony ويُمكنك تنصيبها بالأمر التّالي: sudo gem install pony ولاستعمالها في تطبيقك تأكّد من أنّك استدعيتها بشكل صحيح: #استدعاء الجوهرة require 'pony' post '/signup' do # المرسل إليه Pony.mail :to => 'you@example.com', # المُرسل :from => 'me@example.com', # الموضوع :subject => 'Howdy, Partna!' end يمكنك كذلك استخدام القوالب لإرسال الرسالة عن طريق نموذج للإرسال، وهذا هو محتوى الملفّ email.erb: Good day <%= params[:name] %>, Thanks for signing my guestbook. You're a doll. Frank And in mailerapp.rb: post '/guestbook/sign' do Pony.mail :to => params[:email], :from => "me@example.com", :subject => "Thanks for signing my guestbook, #{params[:name]}!", :body => erb(:email) end
  4. أولا تطبيقات سيناترا لا تمتلك طريقة تسلسل هرمي على مجلّد views لذلك فمن المُفضّل عدم تطوير تطبيق مع مجلّد إبن إلا إذا كنت في حاجة ماسّة لذلك. ويُمكنك القيّام بما تريده عن طريق الأسطر التّالية: get '/' do haml :'foo/bar' endوهناك طريقة أخرى للقيّام بذلك وهي باستعمال وظيفة : .to_symوهذا مثال عليها: get '/' do haml 'foo/bar'.to_sym end
  5. بالتأكيد يُمكنك فعل ذلك، اُنظر للتطبيق التّالي: ["/foo", "/bar", "/baz"].each do |path| get path do "You've reached me at #{request.path_info}" end endفي التّطبيق أعلاه يُعرض نفس الشيء في المسارات foo ، bar ، baz . مع تنبيه المُستخدم بأنّه دخل من مسار معيّن. فمثلا لو دخلت إلى التّطبيق من المسار foo فسيعرض عليك التطبيق الجملة التّاليّة: You've reached me at /foo
  6. يُمكنك أن تناديّ المعاونين في ملفّات العرض على سيناترا، لأنّ ملفّات العرض تمتلك إذنا بالوصول التّلقائيّ لوظائف المعاونين، ففي Sinatra المعاونون، ملفّات العرض، والمسارات لها أحقّية الوصول إلى نفس الوظائف والمتغيّرات النّموذجيّة. وكمثال على ذلك: في ملفّ hello.rb: helpers do def em(text) "<em>#{text}</em>" end end get '/hello' do @subject = 'World' haml :hello endفي ملفّ views/hello.haml: %p= "Hello " + em(@subject)
  7. يُمكنك القيّام بذلك بالاستعانة بخاصّية request : get '/hello-world' do # الحصول على مسار الصفحة فقط request.path_info # => '/hello-world' # الحصول على مسار الصفحة ومتغيّرات GET request.fullpath # => '/hello-world?foo=bar' # الحصول على عنوان Url الخاص بالصّفحة request.url # => 'http://example.com/hello-world? foo=bar' endانظر صفحة Rack::Request للحصول على قائمة بالوظائف التّي يُمكن أن تُنفّذها بخاصيّة request.
  8. خاصيّة الجلسات معطّلة افتراضيّا على سيناترا، ولتشغيلها يُمكنك القيّام بالتّالي: أولا أضف هذا السّطر: enable :sessionsثمّ استعمل session للحصول على القيّم من النماذج (forms) والموجّهات (routes): session[:xyz]وإليك مثالا على ذلك: get '/foo' do session[:message] = 'Hello World!' redirect to('/bar') end get '/bar' do session[:message] # => 'Hello World!' end إذا كنت ترغب بإضافة معاملات أخرى للجلسات، كتاريخ الانتهاء بالنّسبة للكعكات على سبيل المثال، فيُمكنك استعمال Rack مباشرة عوضا عن السّطر الخاص بتشغيل الجلسات وذلك بإضافة السّطر التّالي: Rack::Session::Cookie إليك مثالا من التوثيق الخاص بـ Rack: use Rack::Session::Cookie, :key => 'rack.session', :domain => 'foo.com', :path => '/', :expire_after => 2592000, # In seconds :secret => 'change_me'
  9. مرحبا، يُعتبر إطار Sinatra من أفضل أطر العمل الخاصّة بالويب، ويمكن أن تستعمله لبناء تطبيقات ويب بسرعة وبساطة، ويمكنك أن تبنيّ به مشاريع صغيرة ومُتوسّطة أمّا إذا كان مشروعك ضخما ويتطلّب الكثير من الملفّات فإطار Sinatra وحده لا يكفي، ولكن يُمكن أن تستعين ببعض الأطر المبنيّة عليه إذا كنت ترغب في برمجة وتطوير مشاريع كبيرة، ويُعتبر إطار padrinorb من أهمّ هذه الأطر؛ وهوّ إطار مبنيّ على Sinatra والغرض منه إنشاء مشاريع ضخمة باستعمال لغة روبي مع الحفاظ على جماليّة وفلسفة إطار Sinatra. مميّزات padrinorb تتمثّل في كونه يمتلك العديد من الوظائف الجاهزة وبعض المُساعدات، مثل المولّدات Generators لتوليد المتحكّمات والنماذج (models, controllers) للعمل بطريقة MVC. يُمكنك الاطّلاع على المزيد من المميزات في الصفحة الرسميّة لإطار padrinorb.
  10. هناك العديد من الطّرق للمقارنة بين السلاسل النّصيّة في Perl : cmp اختصار لـ Compare وتعني قارن: 'a' cmp 'b' # -1 'b' cmp 'a' # 1 'a' cmp 'a' # 0eq اختصار لـ Equal وتعني يُساوي: 'a' eq 'b' # 0 'b' eq 'a' # 0 'a' eq 'a' # 1ne اختصار لـ Not-Equal وتعني لا تساوي: 'a' ne 'b' # 1 'b' ne 'a' # 1 'a' ne 'a' # 0lt اختصار لـ Less than وتعني أصغر من: 'a' lt 'b' # 1 'b' lt 'a' # 0 'a' lt 'a' # 0le اختصار لـ Less than or equal to وتعني أصغر من أو تُساوي: 'a' le 'b' # 1 'b' le 'a' # 0 'a' le 'a' # 1gt اختصار لـ Greater than وتعني أكبر من: 'a' gt 'b' # 0 'b' gt 'a' # 1 'a' gt 'a' # 0ge اختصار Greater than or equal to وتعني أكبر من أو تساوي: 'a' ge 'b' # 0 'b' ge 'a' # 1 'a' ge 'a' # 1
  11. مرحبا، يُمكنك القيّام بالأمر بالسّطر التّالي: $str=~ s/[^0-9]//g; هذا السّطر يزيل جميع القيّم غير العدديّة، ويبقي فقط على القيم العدديّة فقط مثال: لدينا متغيّر $str يحوي نصوصا وأعدادا: $str="hello 34 some text"; إذا أردنا استخراج القيمة 34 من هذا المتغيّر فكلّ ما علينا هوّ إضافة ذلك السّطر: $str="hello 34 sometext"; $str=~ s/[^0-9]//g; print $str;بحيث سيكون المخرج: 34
  12. ريّادة الأعمال ترتكز أساساً على المُخاطرة وتحدّي الصّعاب. وكما يقولون " يجب أن تعرف صديقك، ويجب أن تعرف عدوّك أكثر." لذلك فالطريقة المثلى لمواجهة المُنافسين تكمن بدراستهم أوّلا ومعرفتهم جيّدا، وكذلك دراسة مُنتجهم الذي أنت بصدد منافسته، ادرس من جميع النّواحي، من حيث الإيجابيات والخدمات التّي يُوفّرها وادرس قاعدة مستخدميه. مالذي يُحبّونه؟ وما الذي يُزعجهم في ذلك المنتج. اُدرس كذلك سلبيّات منتج منافسيك وحاول أن تأتيّ بأفكار لمواجهة تلك السّلبيّات، وبناء منتجك بحيث يكون خاليّا ممّا لا يحبّه مستخدمو منتج المنافس. أي أنّك يجب أن تُقدّم منتجاً معدّلا ومُحسّناً وأفضل من منتجات منافسيك قدر المُستطاع.
  13. مرحبًا صديقي، لكي تُقنع العميل فلا بدّ لك من اعتماد أسلوب واضح لما ستقدّمه ، وإليك بعض النّصائح: - اعرض عليه نماذج أعمالك السّابقة، وحاول ألّا تخرج عن الموضوع فإن كان العميل بحاجة إلى مُصمّم فلا تحدّثه عن أعمالك في الكتابة والبرمجة والتّسويق وغير ذلك، بل اعرض عليه ما يريده منك فقط. - وضّح له تفاصيل ما ستقوم به، فإن كان يطلب كتابة مقالة فأعطه مخطّطا كاملا لما ستكتبه، واحرص على أن يكون ما تقدّمه من تفاصيل المشروع موافقا لما يريده العميل، لذلك لا تتسرّع في وضعك للتفاصيل فقد تغفل بعض الأشياء، ما قد يُبعد العميل عن توظيفك. - بيّن له بأنّك تفهم المطلوب منك، ويُمكن أن يكون ذلك بإعطائه لعمل سابق لك بحيث يكون قريباً ممّا طلبه العميل. - ابتعد عن الغرور وكن متواضعا في تواصلك مع العميل.
  14. أهمّ وسيلة لتوليد الأفكار ككاتب مُحتوى هيّ بالقراءة الدّائمة، فيمكنك إمّا قراءة المُدوّنات العربيّة والأجنبيّة التّي لها نفس مجال كتابتك أو أي مجال قريب منه، واستخلاص أفكار لمقالاتك، أو عن طريق قراءة كتُب حول مجال عملك وغير ذلك من المواد المقروءة. يُمكن كذلك اعتماد توليد الأفكار عن طريق الأسئلة، فمثلا عند كتابة مقالة مُقسّمة إلى فقرات حاول دائما أن تسأل أسئلة مثل لماذا؟، كيف؟ وماذا وأين؟ ومتى؟. فمثلا لنقل بأنّنا نملك مقالة عن مميّزات العمل الحر والتّالي عنوان لفقرة مُعيّنة: - أنت كمُستقل لك الحريّة في العمل من أي مكان تريده. لنفترض بأنّ هذا عنوان لفقرة، يُمكنك توليد فكرة مقالة كاملة من هذا العنوان باستعمال الأسئلة المذكورة أعلاه. لماذا أعمل من أي مكان تريده؟، أين تعمل؟، ما طبيعة عملك في مكان وزمان محدّدين؟ كيف تعمل من المكان الفلانيّ ومتى؟ وأتمنّى أن تكون الفكرة قد اتّضحت.
  15. مرحبًا، هناك عدّة أفكار لتحقيق مُبتغاك فأولاً يجب أن تحصلي على عملاء دائمين بحيث تكونين مشغولة طوال الوقت، ولذلك فإليك بعض الإستراتيجيّات التّي تُساعد على ذلك: - الاهتمام بمعرض أعمالك، حيث يجب أن تقومي ببعض المشاريع المجّانيّة كنموذج لما يُمكنك أن تُقدميه للعملاء، فمثلا لو كنت مُصمّمة فقومي بإنجاز بعض التّصاميم ووضعها في معرض أعمالك، واحرصي على تحديثه بين الحين والآخر بإضافة أعمال جديدة وحذف أخرى. - التسويق لنفسك على شبكات التواصل الاجتماعي، كوني حاضرة على مواقع التواصل الاجتماعي وشاركي في المجموعات التّابعة لمجالك، فمثلا إن كنت كاتبة فادخلي واكتبي بعض المقالات المُفيدة وامنحي رأيك لمن يطلبه. - طوّري مهاراتك باستمرار، إذ عليك تعلّم تقنيّات جديدة بين الحين الآخر كما يجب الاطّلاع جيّدا على التّقنيات الجديدة حول مجال عملك، فمثلا على المبرمج الإطّلاع على أطر العمل الجديدة كما يجب على المُصمّم الإطّلاع على الأساليب الجديدة في الـتّصميم. - طوّري مهارات التّواصل لديك، فالعمل الحر يتمركز أساسا حول التواصل الكتابي لذلك لضمان أن يتعامل معك العميل مُجدّدا على تواصلك أن يكون جيّدا بحيث يكون خاليّا من الأخطاء الإملائية واللغويّة، وحاولي الموازنة بين الجدّ والمزاح في التّواصل. كما يُمكنك أن تبيعي منتجات رقميّة على منصّة أسناد وغرها من المتاجر لضمان دخل إضافيّ.
  16. مرحبا، الأمر الذي يشغل بال المُستقلّين عادة ما يكون متعلّقا بمدى جودة العرض من حيث ميزانيّة العمل وكميّة الجهد اللازمة للقيّام بالأمر والمُدّة اللازمة، وهذه العوامل الثلاثة هي ما يُساعدك على تحديد رغبتك في العمل أو في الرّفض. لذلك فأفضل طريقة لتحديد ذلك هي بالإجابة على الأسئلة التّاليّة: - هل تستطيع القيّام بالأمر؟ واحرص على عدم الإجابة على هذا السّؤال إلّا بعد قراءة جميع تفاصيل المشروع وفهمها جيّداً. - هل المبلغ مقبول ويناسب كميّة الجهد الذي ستقوم به؟ وهذا السؤال بالطّبع لن تُجيب عليه إلّا بعد التّفاوض مع صاحب المشروع، وتحديد مبلغ نهائي. - هل يُمكنك إنجازه في المُدّة اللازمة؟ اُنظر إلى التزاماتك اليوميّة والمشاريع الأخرى التّي يجب عليك القيّام بها قبل أن تُجيب على هذا السؤال، وبالطّبع تستطيع المُفاوضة على مُدّة الإنجاز كذلك. - هل تفاصيل المشروع واضحة تماما؟ بعد أن قرأت تفاصيل المشروع جيّدا، هل اتّضحت الصورة في ذهنك أم أنّك تحتاج إلى المزيد من المعلومات؟ إذا كانت الإجابة بنعم فعليك أن تطلب المزيد من المعلومات من صاحب المشروع إلى أن يتضح كلّ شيء بالنّسبة إليك. فإن بم تتّضح الصورة واستنتجت بأنّ صاحب المشروع لا يعرف مالذي يريده. فاقترح عليه ما يناسبك، فإن قبِل بالأمر فهذا جيّد، وإن لم يقبل، فهذا تماما ما يلزمك لاتّخاذ قرار الانسحاب. - هل هناك بديل آخر؟ إذا كنت تشكّ في مدى إعجابك بالمشروع، فحاول العثور على بديل آخر بحيث يتطلّب جهدا أقلّ ويُدرّ مالا أكثر.
  17. مرحبا صديقي، أولا أحبّ أن أنبّهك إلى أنّ مثل هذه العناوين غير مناسبة فالعنوان يجب أن يوحي جيّدا لمحتوى السّؤال. أمّا بالنّسبة لسؤالك، فعلى حدّ علمي سيصلك الإشعار على بريدك الإلكتروني الذي استعملته لإرسال المقالات. فالمرجو التّحقّق من ذلك
  18. مرحبا، إنّ العميل يبحث عن من يُقدّم له أفضل خدمة، ومعظمهم يحبّون العروض التي تُناسب توقّعاتهم من حيث الميزانيّة، ويُحبّون كذلك المستقلّ الجاد، لذلك إليك هذه النّصائح: - ضع مُدّة معقولة، بدون إفراط ولا تفريط فإن خالفت توقّعاتك توقّعات العميل فلا تحاول الضغط على نفسك بوضع المُدّة التي يتوقّعها العميل، واشرح له لمَ اخترت هذه المدّة. - ضع ثمنا معقولا، ولا تقع في فخ (العرض الأرخص هو الأكثر طلباً)، فالعرض الرخيص يوحي بانعدام الاحترافية والخبرة، وبأنّك ستفعل أي شيء مُقابل مبلغ زهيد من المال. - لا تذكر جميع خبراتك، فمثلا إن كنت مُصمّما وصاحب المشروع يحتاج إلى مُصمّم، لا تذكر له مدى احترافك للبرمجة والكتابة والتسويق والتّرجمة إلخ… اُذكر فقط ما يريده العميل منك ولا تخرج عن الموضوع. - تجنّب الأخطاء الإملائية، فهذه الأخطاء توحي للعميل بأنّ التّواصل سيكون صعبا، وبالتّالي فلن يقبل عرضك. - لا تضع عرضا طويلا، إذا كنت عميلا يرغب في شخص ليُنجز له مشروعه، فهل سيهمّك عمر هذا الشّخص وجنسيّته وحياته المهنّية والشّخصيّة وغير ذلك ممّا لا علاقة له بالموضوع؟ بالطّبع لا، فكلّ ما يهمّ صاحب المشاريع هو جاهزيّة المستقلّ وقدرته للقيّام بالأمر. - نقطة أخرى مهمة للغاية، لا تنسخ وتلصق عرضًا جاهزًا تستخدمه على جميع المشاريع، أبدي اهتمامًا بالمشروع الذي بين يديك واكتب عرضًا يناسبه تمامًا.
  19. إليك بعض النّصائح حول الأمر: - تجنّب الأخطاء الإملائيّة، حيثُ تُعبّر الأخطاء الكثيرة عن مدى انعدام الحرفيّة لديك، كما أنّه سيصعب على العميل قراءة رسالتك ما يتنافى مع رغبتك في الإبقاء عليه والتعامل معه على المدى البعيد، فإن لم يفهم رسائلك إلّا بصعوبة في أول مشروع بينكما فبالتأكيد سيبحث عن من يجعل الأمور أسهل بالنسبة له، حتى ولو كان عملك الذي قدّمته جيّدا. وأقصد هنا بالأخطاء الإملائيّة الكثيرة، تلك التّي يسهل ملاحظتها كقلب التّاء المربوطة هاءً (كلمه، عوض كلمة) وتلك الأخطاء المتعلّقة بالألف المقصورة والممدودة (انتها العمل عوضاً عن انتهى العمل). ولكي تتجنّب هذه الأخطاء حاول الكتابة أوّلا على برامج مثل LibreOffice Writer أو Microsoft Word، مع المُدقّق الإملائي في وضعيّة التّشغيل قبل إرسال الرّسالة للعميل. - تجنّب الكتابة باللهجة العاميّة، أبق على لهجتك في بلدك، ففي العمل الحر لا مكان لها كوسيلة للتواصل بين المستقل وصاحب المشروع خاصّة إذا تواجد الاثنان في أماكن مُختلفة من العالم (وهذا هو الرائج في العمل الحر). حتى ولو كان صاحب المشروع ابن بلدك، فإن تحدّث معك باللغة العربية الفصحى فهذا يعني بأنّه يريدك أن تتكلم بالفصحى (يُمكن استعمال بعض الكلمات العاميّة بين الحين والآخر في سبيل المزاح). - كن جادّاً في تواصلك مع العميل، ولا تكثر من المزاح الذي لا فائدة منه، بالطّبع فإن القليل من المزاح دائما ما يكون جيّداً. إلّا أنّ الإكثار منه في مناسبات عديدة قد يسيء إلى جودة التواصل، وقد لا يكون العميل مقدّرا لذلك. - النصيحة الأهم أبقيتها للأخير كي توليها أكبر اهتمام ولا تنساها؛ أجب على العميل بأسرع ما يمكنك، في العموم فإن التأخر عن 24 ساعة بالإجابة يُعتبر تصرفا مستهجنًا.
  20. مرحبا، إليك بعض النّصائح: - كن جادّا في العمل، ولا تُحاول أن تتذاكى على صاحب المشروع بالاحتيّال. كأن تقدّم له نموذجا خاليّا من أي وظيفة، أو واجهة لبرنامج لا تسمن ولا تغني من جوع. بل قدّم له نموذجا مرفقا بالتّعليقات الضروريّة التّي تشرح كل سطر وطريقة عمله. - اقرأ تفاصيل مشروع العميل بتركيز وجديّة، فقبل أن تقدّم عرضك على المشروع، ركّز دائما على قراءة التفاصيل أكثر من مرّة، واسأل نفسك أسئلة تأكيديّة مثل: هل يُمكنني فعلا القيّام بالأمر؟ هل حقّا أستطيع إنجاز المطلوب في الوقت المُحدّد؟ - اهتمّ جيّداً بالمدّة الكافيّة لإنجاز المشروع، آخر سؤال تأكيديّ أعلاه كان عن المُدّة اللازمة لتنفيذ المشروع وهو أمر جدّ هام في مجال العمل الحر، إذ عليك أن تكون واضحا مع نفسك عند تحديدك لمُدّة مُعيّنة وأول عامل يُساعدُ على ذلك هو خبرتك بمجال المشروع. - ضع مُسودّة عمل للمشروع، عليك أن تدوّن كلّ صغيرة وكبيرة في هذه المُسودّة وتُقدّمها للعميل بين الحين والآخر ليطّلع على سير المشروع بشكل واضح. ستحتوي المُسودّة على إنجازاتك كإضافة خاصيّة أو تحسين أخرى وحتى إزالتك لشيفرة ما في الملفّات البرمجيّة. وحاول دائما تضمين السبب الذي جعلك تتخذ أي قرار. - إذا كانت لديك بعض الأفكار لتطوير المشروع فقدّمها للعميل ولا تشغل نفسك بتطبيقها، فإن أراد العميل تطبيقها فحاول طلب مُقابل ماديّ حسب نوع الطلب، ولا تسرف في تقديم الخدمات المجّانيّة، بل تقيّد بالعمل على تفاصيل المشروع المتّفق عليها.
  21. مرحبا، بما أنّك طالب فلا بدّ بأنّ الدراسة لا تبدأ إلّا عند حوالي الثامنة صباحا. يُمكنك استغلال كم هائل من الوقت قبل ذلك، فحاول ترويض نفسك على الاستيقاظ قبل الموعد المعتاد بساعة لمدّة أسبوع حتّى تتعوّد على الأمر وقم بانتقاص ساعة أسبوعا بعد أسبوع إلى أن تستطيع التّمكن من الاستيقاظ قبل حوالي ثلاث ساعات أو أربع قبل موعد استيقاظك المُعتاد وبالتّالي ستملك بعض الوقت الإضافي لتخصيصه للعمل على مشاريعك، مع الحفاظ على قسط من النّوم بين 7 و 8 ساعات، وذلك يكون بالذهاب مبكرا إلى النوم، ولا تحاول أبدا إجهاد نفسك ليلا والعمل إلى ساعة متأخرّة فقد يُفسد هذا يومك التّالي. لكي لا تحصل على تقييمات سلبيّة لعدم تقديمك للعمل في الوقت المتّفق عليه فعليك بالتّالي: - كن واضحا مع نفسك وتأكد من أنّ وقت الإنجاز الذي اقترحته على العميل يكفيك فعلا للانتهاء من المشروع، وضَعْ بعين الاعتبار أوقات الدّراسة والمراجعة اللازمة لكي لا تبخس الدّراسة حقّها، فمثلا إذا كان لديك يوم عطلة في نهاية الأسبوع فعليك أن تحرص على استغلاله وموازنة جميع الأنشطة اللازم القيّام بها، من مراجعة لدروسك إلى إنجاز جزء من المشروع الذي تعملُ عليه، واستغلّ وقتك جيّداً باتّباع أساليب تنظيم الوقت. - أخبر العميل بوضعك لكي يفهم ظروفك ولكي يتفّهم بأنّك تحتاج إلى المزيد من الوقت لإنهاء المشروع. - قسّم المشروع إلى أجزاء وضع خطّة لإنجاز كل قسم، وضع جداول زمنيّة قبل عملك على المشروع التزاما بتنفيذ خطّة عملك. - استغلّ أوقات الاستراحة في الدّراسة للتخطيط لمشاريعك قيد الإنجاز. - تعلّم أساليب العمل وزيّادة الإنتاجيّة لكي تستطيع تحقيق أكبر قدر ممكن من الإنجازات في الوقت الضّيق الذي تمتلكه.
  22. لتشغيل ملف Perl من الطرفيّة عليك أولا أن تحفظه بامتداد .pl ثم الدخول إلى المجلّد الذي يحتوي الملف عبر الأمر cd ثمّ شغل الأمر التّالي: perl اسم_الملف.pl يُمكنك أيضا إضافة هذا السطر في أول الملف: #!/usr/bin/env perl ثم عليك أن تغيّر من نمط تشغيله ليكون قابلا للتنفيذ (executable) : chmod 755 اسم_الملف.plثمّ تشغيله من الطّرفيّة بالأمر التالي: /path/اسم_الملف.pl عليك أن تُغيّر path إلى المسار الأصلي
  23. يُمكنك تحقيق مبتغاك باستعمال كل من جوهرة pg الخاصة بـ postgresql وجوهرة taps. وهذه الطريقة تحافظ على البيانات كما هي وتنقلها من نمط SQLite إلى Postgresql. أولاً ثبّت Postgresql : حدّث قائمة الحزم: sudo apt-get update ثبّت Postgresql والحزم التي تعتمد عليها: sudo apt-get install postgresql postgresql-contrib libpq-dev أنشئ مستخدما لقاعدة البيانات: sudo -u postgres createuser -s pguser استبدل pguser بأي اسم تريده على شرط أن تتذكّره. أنشئ قواعد البيانات لكل من بيئة التطوير والاختبار: create database اسم_المشروع_development; create database اسم_المشروع_test; حدّث ملف Gemfile: gem 'sqlite3' gem 'pg' gem 'taps' طبق الأمر: bundle install غيّر ملف database.yml: #development: # adapter: sqlite3 # database: db/development.sqlite3 # pool: 5 # timeout: 5000 development: adapter: postgresql encoding: unicode database: اسم_المشروع_development pool: 5 username: اسم_المستخدم_الخاص_بpostgresql password: كلمة_المرور_الخاصة_بPostgresql password: #test: # adapter: sqlite3 # database: db/test.sqlite3 # pool: 5 # timeout: 5000 test: adapter: postgresql encoding: unicode database: اسم_المشروع_test pool: 5 username: اسم_المستخدم_الخاص_بPostgresql password: كلمة_المرور_الخاصة_بPostgresql من سطر الأوامر شغّل خادوم taps على قاعدة بيانات SQLite: taps server sqlite://db/development.sqlite3 user passwordالجوهرة taps تحتاج إلى اسم مستخدم وكلمة مرور، SQLite لا تملكهما، لكن يُمكنك استخدام "user” كاسم للمستخدم و "password” لكلمة المرور. قم بدمج البيانات: taps pull postgres://اسم_المستخدم@localhost/اسم_المشروع_development http://user:password@localhost:5000 أعد تشغيل خادوم الويب : rails s ثم في الأخير تخلص من جوهرتي sqlite و taps لأننا لم نعد في حاجة إليهما. #gem 'sqlite3' gem 'pg' #gem 'taps'
  24. لا توجد وصفة سحريّة لزيّادة الإنتاجيّة، لكنّك تستطيع اتّباع بعض النّصائح المتعارف عنها والمُتمثّلة في التّالي: -العمل لفترات متقطّعة: لا تجهد نفسك في العمل لساعتين متواصلتين فالجسد البشريّ لا يستطيع الاستمرار في التركيز لأكثر من ساعة ونصف، ومن المُستحسن العمل بتركيز لنصف ساعة أو 25 دقيقة ثمّ أخذ قسط من الراحة لمدة 5 دقائق. -التركيز على مهمّة واحدة في الوقت المذكور أعلاه، فمثلا إذا كنت تعمل على مقالات متعدّدة في مواضيع مُختلفة فلا تُشتّت ذهنك بالكتابة تارة في هذا الموضوع وتارة في الآخر فالأمر ليس مجديّاً بتاتا،بل ركّز على مقال واحد فقط إلى أن تُنهيّه. -الاستيقاظ مبكراً، وأظنّ أنّك تعلم هذا مسبقا فهو أمر معروف ولا يخفى على أحد، فالعمل بالصّباح الباكر لا يقارن أبدا بالعمل ليلا أو في ساعة متأخرة. - تخطيط اليوم التّالي في المساء أو في صباحه، فوضع خطّة عمل تساعدك على الحفاظ على حماسك وتمنعك بدرجة نسبيّة من التسويف واللهو، لكن لا يجب عليك أن تصاب بالإحباط إذا لم تتمكن من تنفيذ الخطّة بحذافيرها بل يكفي أن تنهي معظم المهمّات في الخطّة وهذا أفضل من لا شيء.
  25. عليك إعادة التّفكير في طريقة إنجازك للمشاريع وعليك اتّباع نصائح زيادة الإنتاجيّة كالتركيز على عمل واحد لمدّة نصف ساعة وأخذ قسط من الرّاحة لمدّة 5 إلى 10 دقائق، وتجنّب العمل على المشروعين في نفس وقت التّركيز، أي لا تقسم النصف ساعة على مشروعين بل اجعلها لمشروع واحد فقط. فإن لم تستطع أن تؤديّ المشاريع الموكلة إليك مهما حاولت فعليك الاعتذار لبعض العملاء. وكن حذراً في اختيّار من ستعتذر منه، حاول أولاً أن تطلب وقتا إضافيّا لإنجاز العمل وانظر رأي العميل وحدّد شخصيّته وتوجّه بطلب الاعتذار عن العمل للعملاء الأكثر تسامحا وطيبة لأنهم غالباً سيتفهّمون الأمر أكثر من العملاء الصّارمين.
×
×
  • أضف...