Sunday, April 28, 2024

La Semaine Dernière A Mes Yeux




(27 avril --- 03 mai)

Cliquez pour voir/cacher
Ma Semaine Gastronomique
Date Petit déjeuner Déjeuner Dîner Snacks,Sucreries,Boissons et Fritures
27 Riz rassis,Purée de pomme de terre Riz,Bata poisson,Purée de pomme de tere,Soupe aux lentilles Riz,Purée de pomme de terre,Soupe aux lentilles ---
28 Pain,Lait Riz,Barbe puntio,Épinard d'eau Riz,Barbe puntio,Épinard d'eau ---
29 Pain,Omelette Riz,Puntio barbe avec pomme de terre Riz,Ruhi,Pomme de terre ---
30 Toast biscuit Riz,Ruhi,Pomme de terre,Soupe aux lentilles Toast biscuit ---
01 Toast biscuit Riz,Latya poisson,Pois blanc Riz,Laty poisson,Pois blanc ---
02 Pain,Omelet Riz,Épinard d'eau,Pois blanc Riz,Pois blanc,Pama croaker,Lait Riz gonflé,Lait
03 Pain,Omelet Riz,Latya poisson Riz,Tilapia avec pomme de terre Riz gonflé,Pois chiches,Lait

Saturday, April 27, 2024

Foreign Currency Crisis And Misuse Of Public Money


Uphill task of revenue collection
Is marred with inefficient resource allocation.

Recently, platform of international air travel agencies appealed to the government of Bangladesh to release $323 million owed by the agencies. They made similar request to the government of Pakistan. Both countries are facing severe foreign currency crisis and subject of IMF budgetary assistance to fix their macroeconomy. Earlier Bangladesh Bank eased the rule of purchasing plane ticket with foreign currency, allowing local currency as a substitute. This was not the first incident many multinational companies had earlier reported that they had difficulties in repatriating their profit back home amid foreign currency crisis.

This issue is surfaced at a moment when Bangladesh Petroleum Corporation (BPC) owes Taka 30 billion as fuel bill to Biman Bangladesh Airlines,national flag carrier of Bangladesh. Petrobangla ,another public company ,on the other hand earned Taka 90 billion as interest by depositing VAT money into several bank accounts ,not giving a penny to the National Board of Revenue(NBR).The due payment is more than enough to clear travel agents' dues of $323 million.

Meanwhile, our interest payment on foreign loans has already crossed $2.57 billion for the current fiscal year. It is indeed putting huge pressure on resource allocation. Government has already requested the Russian government to postpone the scheduled repayment of Rooppur Nuclear Power Plant credit for two years. Delay in installing the transmission line ,which requires new assessment and foreign credit,is identified as the main reason.

Monitoring and Evaluation department of the ministry of planning has already shelved the proposed spending on line 5 of the Metro rail service network. It particularly questioned spending on Taka 60 billion as commitment fees and interest payment. Why don't we use the stock market to finance the metro rail project? European settlers in the United States used stock market to expand rail network across America. If people and companies are interested, they will buy stock of this rail network. This is also a measure of identifying the popular and viable routes. Per kilometer construction cost of such project reached a record level ,an unmatched example in the world. And for an electricity-run metro service, we the commuters pay a hilarious amount of fair, almost twice the fair of bus,which is lowered recently following fuel price adjustment. Using simple tiles instead of granite, staircase (and large service lift/no lift) instead of escalator and too many lifts,local materials instead of foreign materials, spartan stations instead of exotic stations, no station plaza instead of too many station plaza, local coaches instead of foreign coaches ,we could bring down the construction cost. I had the opportunity to ride on the Chennai metro,which is also viaduct-based. It is simple ,clean ,functional and cheap. This is what we want here. We have to cut our coat according to our clothes. Eye-dazzling look gives a comfort,but does not provide a relief to the inflation-battered pockets. And our companies should have greater role in these projects. Leasing out the management of metro service to third parties could bring down the operational cost and increase the revenue.

Inefficient use of resources is another worry. A public company provided 100,000 electronic voting machine (EVM) to the Election Commission with a price tag of Taka 38.25 billion. EVM machines were supposed to be operational for 10 years. But after 5-year 60% of them went out-of-service and the public company demanded Taka 80 billion to fix them. However,due to acute funding crisis the project did not see the light. Any private company could provide the EVMs at one-tenth of the cost and might save the public money. So we are witnessing acute funding crisis on one side,and inefficient use of public resources on the other. Government is unable to clear the dues of international air travel agencies,but wasting millions of tax payers' money through rickety public companies.

Tuesday, April 23, 2024

সিউডোকোড ডেভেলপমেন্ট

Pseudocode:সিউডোকোড ডেভেলপমেন্ট হল অনাড়ম্বর ভাবে প্রোগ্রামিং এর syntax অনুসরণ না করে একটি বিষয়/সমস্যাকে program আকারে প্রকাশ করা । আর তারপর syntax মেনে program টা লেখা। অনেকের ক্ষেত্রে Pseudocode development নিজের ভেতরেই হয়ে যায়,আবার অনেকে কাগজে-কলমে pseudocode develop/refine করতে করতে চূড়ান্ত program/final refinement এ পৌঁছে যান। শুরুর দিকে কাগজে-কলমে pseudocode develop করা উচিত। কিছুটা অভিজ্ঞ হলে নিজের ভেতরেই তা করা যাবে। আমরা যদি 5,10,15,20 এই চারটি সংখ্যার গড় বের করতে চাই,তবে কিভাবে pseudocode develop করব তাই এখানে দেখানো হয়েছে।

Statement:
5,10,15,20 এর গড় বের করতে হবে।
First refinement:
সংখ্যাগুলোকে একটি Arrayতে নিতে হবে।
তারপর এদের যোগ করে গড় বের করতে হবে। গড় বের করতে হলে আমাদের দরকার সংখ্যাগুলোর যোগফল আর মোট সংখ্যা।
Second refinement:
Array a-তে সংখ্যাগুলোকে রাখি।
Arrayএর length হচ্ছে মোট কয়টি সংখ্যা নিয়ে আমরা কাজ করছি।
Arrayএর element গুলো যোগ করব।
যোগফলকে মোট সংখ্যা দিয়ে ভাগ করব।
গড়/ফলাফলকে screen এ দেখাব।
Third refinement:
a নামের একটি Array declare করি তারপর এটিকে initialize করি 5,10,15,20 সংখ্যাগুলো দিয়ে।
যোগফলের জন্য sum নামে একটি variable declare করি আর একে initialize করি 0 দিয়ে। aএর প্রথম element দিয়ে শুরু করে একে একে শেষ elementটিও sum এর সাথে যোগ করি।যোগ করবার কাজটি একেবারে শেষ element পর্যন্ত চলবে(Looping হচ্ছে)।
যোগফলকে(sum) aএর length দিয়ে ভাগ করলে গড় পাওয়া যাবে। res নামের একটি variable declare করে এই গড়কে ধারণ করি।
resকে screen এ দেখাই।
Final refinement:
var a=5,10,15,20
var sum=0
for var h=0 to a.length:
sum +=a[h]
h++
var res=sum/a.length
document. write(res)

উদাহরণ:
var a=[5,10,15,20];
var sum=0;
for(var h=0;h< a.length;h++){
sum +=a[h];
}
var res=sum/a.length;
document. write(res);

সময় বেশি বা একঘেয়ে লাগলেও একটু কষ্ট করে শুরুর দিকে এভাবেই pseudocode development এর মাধ্যমে programming সমস্যা গুলো সমাধান করা উচিত। ধীরে ধীরে অভ্যস্ত হয়ে গেলে আর কাগজ-কলম লাগবে না মাথার ভেতরে দ্রুতই এটি হয়ে যাবে আর জটিল সমস্যাগুলো সহজে সমাধান করা যাবে।

কৃতজ্ঞতাঃ এই লেখা তৈরি করতে দরকারি তথ্য নেয়া হয়েছে Wikipedia, internet ও আমার তৈরি করা নানা program থেকে।
মন্তব্য ও যোগাযোগঃ mrh4478@gmail.com

Monday, April 22, 2024

La Semaine Dernière A Mes Yeux




(20 avril --- 26 avril)

Cliquez pour voir/cacher
Ma Semaine Gastronomique
Date Petit déjeuner Déjeuner Dîner Snacks,Sucreries,Boissons et Fritures
20 Khichuri,Poulet Riz,Poulet,Poisson Riz gonflé,Poulet,Lait ---
21 Pain,Lait Riz,Poulet,Pomme de terre Riz,Pomme de terre,Soupe aux lentilles ---
22 Riz,Lait Riz,Latya poisson Riz,Latya poisson ---
23 Pain,Poulet Riz,Latya poisson,Purée de pomme de terre Riz,Purée de pomme de terre,Ruhi ---
24 Pain,Omelette Riz,Bata poisson,Pois chiches Riz,Bata poisson,Pois chiches Riz gonflé,Pois chiches
25 Pain,Omelette Riz,Sec latya avec haricots rougr Riz,Sec latya avec haricot rouge,Ruhi ---
26 Sticky rice avec lait Riz,Bata poisson,Haricot rouge avec latya poisson Riz,Lait ---

Saturday, April 20, 2024

Perks For Allowing Opaque Capital


Giving access to opaque capital
Calls for perks substantial.

IMF in its latest world economic outlook has lowered growth projection for Bangladesh. It forecast a GDP growth of 5.7% in this fiscal year. It anticipates an inflation rate of 9.7% for the current year,declining to 6.0% in 2025.

As per the conditions laid out by the IMF, government implemented market-determined fuel price mechanism. On two occasions, prices of fuel were lowered: diesel witnessed the lowest slash as it may prompt smuggling activity while petrol and octane witnessed the biggest fall. But such reduction in fuel prices has not pronounced yet in bus fare and good prices. Maybe one or two months later one will see the development.

Meanwhile, quintessential kitchen items see another round of increase in prices. As contractionary monetary policy is being pursued in the USA,consumers with tight pocket slashed their purchase of imported clothes,resulted in -19% growth in Bangladeshi RMG export to USA last year. However, IMF is optimistic that contractionary monetary policy has not slowed down the economic activities in advanced economies and price levels in general coming down in these countries.

At one hand ,export to USA shrinks. On the other, revenue collection lags the target and government fails to meet the March target of forex reserve.

While revenue increasing measures are being rolled out one by one, tough criticism casts shadow over them. Imposition of VAT on remittances took a particular hit. Again some argued this might lower the inward remittances. However, UAE already imposed such VAT on outgoing remittances and exchange houses said they would comply.

Another idea of taxing the capital gains in stock market met stiff resistance. Reason for not providing assistance in time of capital loss fuels the resisting argument. However, stock market is one of the areas where opaque capital is allowed and one with capital below Taka 100,000 cannot invest here. That means people below minimum taxable income cannot operate here. NBR needs perks for allowing undocumented money into the stock market. Taxing the capital gains is one of those perks. In real estate sector, another area where opaque capital is allowed, NBR hiked the registration fees. This is clearly perks for the government. However, the perks are not enough to improve the situation in these sectors. Any assistance to stock market is contradictory to ongoing subsidy-cutting policies. It may prolong the inflation containing process. So far our assumption about economy gaining confidence after election proved wrong. Prioritizing the goals and sticking to it should be the prudent step. A note of caution by the IMF for advanced economies should be applicable for us too:

"On the upside, looser fiscal policy than necessary and assumed in projections could raise economic activities in the short term,although risking more costly policy adjustments later on."(see IMF World Economic Outlook April 2024, page- xvi)

By the same token,despite protest from the concerned minister, subsidies to ICT sector should be discontinued. NBR should review its policies regarding giving subsidies to sectors that have access to cheap/cost-free/undocumented capital. These two should be decoupled. And NBR should have perks(in the form of taxes/fees) for allowing sectors to enjoy undocumented money.

Monday, April 15, 2024

ইনহেরিটেন্স ও কম্পোজিশন

Inheritance & Composition: Design patterns এ আমরা অসংখ্যবার inheritance ও composition এর মুখোমুখি হয়েছি। এই দু'টি term এবং আরো কিছু জরুরি term এর উপর ছোট আলোচনার দায় অনুভব করছি,নাহলে design patterns নিয়ে আলোচনা অসম্পূর্ণ থেকে যাবে। বিদ্যমান software ব্যবহার করে নতুন software তৈরির উপায় হচ্ছে inheritance ও composition। Inheritance এ base class/super class এর member গুলো subclass/derived class ব্যবহার করতে পারে। এটিকে "is-a" relationship হিসেবেও উল্লেখ করা হয়। কারণ derived class এর object কিন্তু superclass এরও object ("Every object of derived class is also an object of the inherited/superclass ")। উদাহরণে class B হল class A এর subclass এবং Bএর say() মেথড call করলে তা superclass A এর des() মেথডকে call করছে।

উদাহরণ:
class A {
constructor(){}
des(){return " A is here!";}
}
class B extends A{
constructor(){
super();
}
say(){document. write("Inside B:");
return super.des();}
}
var s=new B();
document.write(s.say());

Composition এ এক বা একাধিক class কে অন্য class এর definition এ ব্যবহার করা হয়। এটিকে " has-a" relationship হিসেবেও উল্লেখ করা হয়। কারণ নতুন যেই class তৈরি করা হচ্ছে (Composite class,এটিকে Composite design pattern এর সাথে মেলাবেন না) তাতে অন্য class(Composed class) এর member আছে ("Objects of composite class have objects of composed class as members")।উদাহরণে class C তে class A এর object কে member হিসেবে নিচ্ছে আর C এর tell() মেথডে Aএর des() মেথডকে ব্যবহার করা হচ্ছে।

উদাহরণ:
class A {
constructor(){}
des(){return " A is here!";}
}
class C{
a=new A();
constructor (){}
tell(){
document. write("Inside C:");
return this.a.des();}
}
var e=new C();
document. write(e.tell());

কৃতজ্ঞতাঃ এই লেখা তৈরি করতে দরকারি তথ্য নেয়া হয়েছে Wikipedia, আকর বই "'Design Patterns:Elements Of Reusable Object-Oriented Software' by Eric Gamma,Richard Helm,Ralph Johnson and John Vlissides(Addisson-Wesley.1994)" ও আমার তৈরি করা নানা program থেকে।
মন্তব্য ও যোগাযোগঃ mrh4478@gmail.com

Sunday, April 14, 2024

La Semaine Dernière A Mes Yeux




(13 avril --- 19 avril)

Cliquez pour voir/cacher
Ma Semaine Gastronomique
Date Petit déjeuner/Début de jeûne Déjeuner Dîner Snacks,Sucreries,Boissons et Fritures/Fin de jeûne
13 Pain,Poulet,Patate douce Riz,Feuilles de Indian Pennywort Riz,Pabda ---
14 Pain,Lait Riz,Omelette, Purée de pomme de terre Riz,Pabda ---
15 Pain,Lait Riz,Sec Bombili poisson,Ruhi avec pomme de terre Riz,Poisson gravy ---
16 Bread,Œuf poché,Toast biscuit Riz,Ruhi avec pomme de terre Riz,Ruhi avec pomme de terre ---
17 Riz rassis(Panta bhat),Poulet,Toast biscuit,Lait Riz,Poulet Riz gonflé,Poulet ---
18 Riz gonflé,Toast biscuit,Lait Riz,Ruhi avec pomme de terre Riz,Ruhi avec pomme de terre Riz gonflé,Poulet,Toast biscuit
19 Toast biscuit, Lait Khichuri,Poulet,Œuf dur Riz gonflé,Lait ---

Saturday, April 13, 2024

Another Transition Period Ends


Transition period features mysterious incident
Pass laws to make it transparent.

Another transition period ended in Bangladesh. Though the same regime retained the power ,it was not a peaceful transition period. To me a transition period stretches from three months prior to election to three months after the election.This one stretches from October 07,2023 to April 07,2024.

The period is marked with spike in violent incidents, workers' unrest,mysterious fire incidents that claimed lives and caused serious damages to property. Back in April ,2019,I wrote about then transition period titled "End of Another Transition Period"1. Highlighting some parts of it:

…It is only comparable with the twilight or dawn when the nature tries to adapt itself to the changes. ...In the past we saw that bloody tragedies struck in this period taking full advantage of the lethargic state of transitory period. The main task of this kind of administration is to pass the baton from one elected government to another. In doing so, breaking down of public order often destabilizes homeostasis of the state.

Current transition period witnessed some horrific incidents. I mentioned some of it in a November 03 piece titled " Another Transition Period Begins"2 last year. Latest developments are also added:

1. Fire incident at a commercial building that housed largest servers of Google and Facebook in Bangladesh. It also served as hub of local broadband internet companies. The incident claimed lives of two people. 2

2. A cargo train ignoring instructions of stationmaster hit a passenger train ,killing 18 people and snapping rail links between Dhaka and Chattogram for more than six hours. The incidents occurred few days before grand assembly of the main opposition party in Dhaka. 2

3.Opposition called assembly was marred in widespread violence, killing one policeman in the line of duty and injuring scores of others. Interestingly ruling regime also called on gathering in Dhaka on that day. Dozens of cars were set on fire and police hospital and judges’ residential complex were also attacked. What is interesting this all happened at the stretch of an area where a circle with a 1-km-long radius includes important police installation like detective branch training school,NSI headquarter, several police stations, Secretariat building, installation of President Guard’s regiments and other key public installations. Killing and mayhem without resistance is unthinkable in such a security-tight area.2

4. Opposition called a one-day strike and series of blockade across the country. These programs also witnessed loss of lives(4 opposition activists killed including a journalist) and vandalism. Senior opposition leaders and thousands of opposition activists were detained. 2

5. Another train fire incident at a Dhaka-bound train near Tejagaon Dhaka,killing 4 passengers,on the eve of election day.

6. A horrifying fire incident at Bailey road that gutted down all the restaurants of a building,killing 46 people, on February 28,2024.

7. Fire incident at a sugar depot that resulted in damage of 20,000 tonnes of imported sugar. The depot belongs to a group that holds ownership of several banks.

8.Fire incident at a Jute mill in Khulna,killing 5 people.

9. Fire incident in betel leaf cultivation plots in Kushtia,ruining lives of hundreds of farmers.

10. Fire incident at a bus depot in Demra, near Dhaka,where 14 inter-district buses were completely gutted down.

11. Widespread attack on banks and police stations across Bandarban by an ethnic separatist group known as Kuki-Chin National Front.

12.Like the previous transition period, this period also witnessed widespread garments workers' protest for wage hike, resulted in factory attacks and killing of two workers. In some parts, protest continued in spite of hike assurance. Shut down of 200 factories ensued.

Apart from that numerous slums also fell victim to fire incidents. The nature of fire incidents in Bangladesh calls for serious scrutiny. In other countries, fire did not spread so rapidly at such a short span of time and choked to death so many people. Proper dissemination of forensic report may dispel ambiguities and clear many issues. If there are independent forensic labs under UN / Journalists' body/insurance company,we will have independent forensic report on mysterious fire incidents and extra judicial killing.

Repeating the message I tried to send through the November 03 piece2:

To make the transition period trouble free and violence free,we have to make all the government agencies accountable to the Parliament and the press. In USA,Federal Tort Claims Act3 allows victim American citizens to sue US government or agencies for compensation. In India, then RAW chief RN Kao once appeared before the Parliament to offer his explanation on the role of his agency during the emergency rule,which was marked by gross violation of human rights. I think we should pass laws in the Parliament to make these agencies accountable and restrain them from doing unwarranted acts.Reconciliation and judicial probe could make the transition period as well as the future peaceful.

Notes And References

  1. "End of Another Transition Period",Rezaul Hoque,April 10,2019.Here is the link:https://hoquestake.blogspot.com/2019/04/end-of-another-transition-period.html?m=1
  2. "Another Transition Period Begins",Rezaul Hoque, November 03,2023.Here is the link https://hoquestake.blogspot.com/2023/11/another-transition-period-begins.html?m=1
  3. Federal Tort Claims Act.Here is the link:https://en.m.wikipedia.org/wiki/Federal_Tort_Claims_Act

[Note: I have missed two incidents: one is the robbery at Bagerhat coal-based powerplant a day after the Kuki-Chin attack in Bandarban and another one is the accident of a petrol lorry near Savar ,killing 5 people and setting 5 cars into fire as a result.]

Thursday, April 11, 2024

শেষ থেকে হোক শুরু

"'Design Patterns:Elements Of Reusable Object-Oriented Software'"( by Eric Gamma,Richard Helm,Ralph Johnson and John Vlissides) বইয়ে যে ২৩ টি Patterns এর কথা উল্লেখ করা হয়েছিল তার সবই এখানে সহজ ভাষায় তুলে ধরার চেষ্টা করা হয়েছে।এর বাইরেও আরো উল্লেখ করার মত Patterns রয়েছে তবে আলোচনা আর লম্বা না করে এখানেই ইতি টানতে হচ্ছে। প্রয়োজনে পরে এদের কয়েকটি নিয়ে আলোচনা হতে পারে।

Patterns এর উদ্দেশ্য বা Goal এর উপর নির্ভর করে এদের তিন ভাগে ভাগ করা হয়েছে। Creational Patterns মূলতঃ objects/ class instance গঠন প্রক্রিয়া নিয়ে কাজ করে থাকে। Structural Patterns মূলতঃ class /objectএর গঠনকে কিভাবে সাজানো হবে/Composition সে বিষয়ে আলোকপাত করে। আর Behavioral Patterns মূলতঃ বিভিন্ন objects নিজেদের মধ্যে কিভাবে যোগাযোগ করবে আর তাদের মধ্যে দায়িত্ব/কাজ/behavior কিভাবে বন্টন করা হবে সে বিষয়টি ব্যাখ্যা করে।

(আরো জানতে Patternটির উপর ক্লিক করুন)


Creational Structural Behavioral
ফ্যাক্টরি মেথড,
আ্যবস্ট্রাক্ট ফ্যাক্টরি,
বিল্ডার,
প্রোটোটাইপ,
সিঙ্গলটন
এডাপ্টার,
ব্রিজ,
কম্পোজিট,
ডেকোরেটর,
ফাসাদ ,
প্রক্সি
ইন্টারপ্রেটার,
টেমপ্লেট মেথড,
চেইন অব রেসপন্সেবিলিটি,
কমান্ড,
আইটেরটর,
মেডিয়েটর,
মেমেন্টো,
ফ্লাইওয়েট,
অবজার্ভার,
স্টেট,
স্ট্র্যাটেজি,
ভিজিটর

আবার Patterns এর ব্যাপ্তি/প্রভাব(Scope) অনুযায়ি এদের দু'দলে ভাগ করা যায়: Patterns এর প্রয়োগ কি class এর উপর নাকি object এর উপর। Class Patterns মূলতঃ কাজ করে থাকে Class ও Subclass এর মধ্যকার সম্পর্ক নিয়ে যেটি হয়ে থাকে inheritance (ভবিষ্যতে আলোচনা করা হবে) এর মাধ্যমে। এ সম্পর্ক অপরিবর্তনীয়। আর Object Patterns মূলতঃ objects এর সম্পর্ক নিয়ে কাজ করে থাকে যা run timeএ আবার পরিবর্তন করা যায়।

Class Object
ফ্যাক্টরি মেথড,
এডাপ্টার,
ইন্টারপ্রেটর,
টেমপ্লেট মেথড
আ্যবস্ট্রাক্ট ফ্যাক্টরি,
বিল্ডার,
প্রোটোটাইপ,
সিঙ্গলটন,
এডাপ্টার,
ব্রিজ,
কম্পোজিট,
ডেকোরেটর,
ফাসাদ,
প্রক্সি,
চেইন অব রেসপন্সিবিলিটি,
কমান্ড,
আইটেরটর,
মেডিয়েটর,
মেমেন্টো,
ফ্লাইওয়েট,
অবজার্ভার,
স্টেট,
স্ট্র্যাটেজি,
ভিজিটর

কৃতজ্ঞতাঃ এই লেখা তৈরি করতে দরকারি তথ্য নেয়া হয়েছে Wikipedia, আকর বই "'Design Patterns:Elements Of Reusable Object-Oriented Software' by Eric Gamma,Richard Helm,Ralph Johnson and John Vlissides(Addisson-Wesley.1994)" ও আমার তৈরি করা নানা program থেকে।
মন্তব্য ও যোগাযোগঃ mrh4478@gmail.com

Tuesday, April 9, 2024

La Semaine Dernière A Mes Yeux




(06 avril --- 12 avril)

Cliquez pour voir/cacher
Ma Semaine Gastronomique
Date Petit déjeuner/Début de jeûne Déjeuner Dîner Snacks,Sucreries,Boissons et Fritures/Fin de jeûne
06 Riz,Poisson curry,Œuf dur,Pomme de terre ---- Riz,Poulet avec pomme de terre Pois chiches
07 Riz,Poulet --- Riz,Tilapia avecpomme de terre Pois chiches,Poa pitha
08 Riz,Tilapia avec pomme de terre --- --- Riz,Pois chiches,Pois blanc avec tête de chèvre
09 Riz,Pois blanc avec tête de chèvre --- --- Riz,Pois chiches,Omelette
10 Riz,Pabda poisson --- --- Riz,Pois chiches,Pois blanc avec tête de chèvre
11 Pain,Jelly Riz,Poulet,Pilaf --- Tchotpoti,Jorda
12 Riz,Poulet Riz,Poulet --- Tchotpoti

Saturday, April 6, 2024

Pessimism Deepens


Growth in major sectors stalls
As trust in the economy falls.

Three months have passed since the new government resumed power. Many policy makers and administrators anticipated that economy would bounce back and show positivism after the election. Because many uncertainties will disappear and economic indicators will show some positive trends including the inflation.

As for the inflation,there is no good news. February inflation rate surpassed the January rate. March data has not seen the light yet. BBS may divulge the data after Eid perhaps. But coarse rice prices in general registered an increase of Taka 4/5 per kilo. Poultry meat,beef still remain out of reach to many households. Prices of water melon,date,lemon,brinjal and potato---which are quintessential items in iftar---did not give any sigh of relief to the fast-observing people. Press is abuzz with reports that potato traders pay Taka 33/kilo for the potatoes in the field, indicating higher prices for potatoes in future. In this backdrop,it is highly unlikely that inflationary situation will improve in the coming months.

World Bank in its economic updates for South Asian countries observes that persistent high inflation coupled with delay in market adjustment of exchange rate poses serious challenges to Bangladesh economy. It lowers GDP growth forecast to 5.6% for current fiscal year. It stresses on monetary and fiscal tightening and reliance on consumption and income taxes to improve the ongoing situation.

Gap between actual export earnings repatriated at the end of the year and export earnings reported during the time of order became wider. Last year, it stood at $ 9 billion! Last month ,a fraudulent app laundered Taka 4 billion to UAE, where many wealthy Bangladeshis applied for second home program. This indicates that trust deficit on the economy is growing and money laundering continues unabated.

Government's outstanding energy bill stood at Taka 200 billion. And government already issued bonds to pay energy subsidies. Key sectors like real estate,IT and stock market where investment of undocumented money is not questioned/probed have not seen any growth in these three months. Rather, stock market witnessed record fall,ruining many small individual investors. Flat and apartment sale data is not available. Rising interest rates along with rising cost of living makes it untenable to undertake new housing project. Growth in used apartment sale also stalls. NBR's revenue target forces it to review its policy of tax exemptions towards ICT sector. E-commerce platforms have not witnessed any major FDI. Rather, like PaperFly ,many are planning for closure or merger. Trouble-ridden ones are yet to settle their dues to the merchants and face overwhelming counts of lawsuits.

IMF has made it clear if Bangladesh Bank fails to meet the reserve target for March,then it may stall the third tranche of its $4.7 billion credit package. The need to finance the budget has become so acute that NBR quite rightly decided to tax Metro fare,unreasonably put high by the authority, but met unprecedented criticism from the power corridor. Meanwhile, development projects face peculiar fate over mismanagement and willful delay. Chinese financial institutions like Export-Import Bank of China have stopped funding Elevated Highway authority after it failed to project a clear deadline to end the construction work. Financing by local institutions also becomes difficult. To deal with the Non Performing Loans, authorities encourage merger between banks. Some see it positively,but others remain skeptic about the intended result. This is not sending positive signals to the market and economy. This is clear indication that pessimism is gripping the economy. And it may prolong the recovery.

Friday, April 5, 2024

ভিজিটর

কাদের জন্যঃ Object-oriented programming language সম্পর্কে ধারণা আছে এমন মানুষ।

যা প্রয়োজনঃclass,inheritance,composition,JavaScript সম্পর্কে পূর্ব ধারণা।

Visitor:এটি objectsএ বিভিন্ন behavior যোগ করতে সাহায্য করে objectsএর নিজ নিজ class এর ভেতর কোন পরিবর্তন না ঘটিয়ে। দু'টি প্রধান উপাদান হচ্ছে: Visitor ও Visitable Element(যার object এর উপর behavior যোগ করা হবে)। এক্ষেত্রে behaviors গুলো নানা methods আকারে Visitor class এ থাকে। আর Visitable Element class এ object এর গঠন কিরকম হবে তা নিয়ে ব্যস্ত থাকে আর তার accept() মেথড থাকে যা Visitor object কে argument হিসেবে নেয় এবং প্রযোজ্য Visitor methodকে ব্যবহার করে। উদাহরণে Cost এবং CostWithVat হল Visitor class ProdVisitor এর implementation। আর Banana ও Milk হচ্ছে Visitable Elements class এর উদাহরণ। Runtime এ আমরা Cost কেমন দেখতে চাই ---VAT সহ না VAT ছাড়া--তাই এখানে দেখানো হচ্ছে। এটি করতে গিয়ে আমাদের Banana ও Milk class এ কোন পরিবর্তন করতে হয়নি।

উদাহরণ:
class ProdVisitor{
constructor(){}
vstBanana(banana){}
vstMilk(milk){}
}
class Cost extends ProdVisitor{
constructor(){super();}
vstBanana(banana) {
return banana.price * banana. qty;
}
vstMilk(milk) {
return milk.price * milk.qty;
}
}
class CostWithVat extends ProdVisitor{
constructor(){super();}
vstBanana(banana) {
var a=0.15*(banana.price * banana. qty);
return (banana.price * banana. qty)+a;
}
vstMilk(milk) {
var m=0.15*(milk.price*milk.qty);
return (milk.price * milk.qty)+m;
}
}
class Banana {
constructor (p,q){
this.price=p;
this.qty=q;
}
accept (visitor){
return visitor.vstBanana(this);
}
}
class Milk{
constructor (p,q){
this.price=p;
this.qty=q;
}
accept (visitor){
return visitor.vstMilk(this);
}
}
var b=new Banana(10,1);
var l=new Milk(25,1);
var cost=new Cost();
var vcost=new CostWithVat();
var bcost=b.accept(cost);
var mvcost=l.accept (vcost);
document.write(bcost);
document.write(mvcost);

চেষ্টা করা যাক:ProdVisitor এর বিকাশ ঘটাতে এতে CostWithDelivery class নামে নতুন class যোগ করি যা cost এর সাথে বাড়তি ৫০ টাকা যোগ করবে delivery charge হিসেবে। Program টি নতুন করে আবার লিখি।

কৃতজ্ঞতাঃ এই লেখা তৈরি করতে দরকারি তথ্য নেয়া হয়েছে Wikipedia, আকর বই "'Design Patterns:Elements Of Reusable Object-Oriented Software' by Eric Gamma,Richard Helm,Ralph Johnson and John Vlissides(Addisson-Wesley.1994)" ও আমার তৈরি করা নানা program থেকে।
মন্তব্য ও যোগাযোগঃ mrh4478@gmail.com

Thursday, April 4, 2024

ফ্লাইওয়েট

কাদের জন্যঃ Object-oriented programming language সম্পর্কে ধারণা আছে এমন মানুষ।

যা প্রয়োজনঃclass,inheritance,composition,JavaScript সম্পর্কে পূর্ব ধারণা।

Flyweight:এটি Structural Design Pattern দলের। Memory consumption কমানোর জন্য এটি ব্যবহার করা হয়। এটি object এর intrinsic state (যা পরিবর্তন করা যায় না এবং share করা যায়) কে extrinsic state(যা unique এবং context এর উপর নির্ভর করে) থেকে আলাদা করে। উদাহরণে Address কিভাবে Address Book এ জমা রাখা হয় তা দেখানো হয়েছে। Address class এ name, city ও phone members হচ্ছে এর intrinsic state। আর des() এ sl নামে যে serial number দেয়া হচ্ছে তা extrinsic state। এখানে চাইলেই যখন খুশি name,city আর phone change করা যাবে না। কিন্তু user চাইলেই serial number পরিবর্তন করতে পারবে । AddBook class এর getAdd() এর মাধ্যমে user এর কাছ থেকে name,city ও phone number নিচ্ছে আর তা যদি নিজস্ব Address Book(যা Map/Dictionary data structure এবং এখানে শুধু book নামে পরিচিত)এ থাকে তবে তা return করছে নাহলে নতুন একটি Address object বানিয়ে তা book এ জমা করে return করছে।

উদাহরণ:
class Address {
constructor(name ,city,phone) {
this.name= name;
this.city= city;
this.phone = phone;
}
des(sl) {
document.write(`Sl no.:${sl} Name: ${this.name} ,City: ${this.city}, Phone: ${this.phone}
`);
}
}
class AddBook{
constructor() {
this.book = {};
}
getAdd(n, c, p) {
var key = `${n}-${c}-${p}`;
if (!this.book[key]) {
this.book[key] = new Address(n,c,p);
}
return this.book[key];
}
}
var b = new AddBook();
var firstAdd = b.getAdd('Unk','Noville', 12);
var secondAdd= b.getAdd('Bumb', 'Transzia',14);
firstAdd.des(1);
secondAdd.des(2);

চেষ্টা করা যাক: আরেকটি program লিখি Friends নামে। এখানে শুধু name আর address নামে দু'টি members থাকবে যা intrinsic state নির্দেশ করে। আর des() এ pseudo নামে একটি argument pass করা হবে যা Friends দের pseudo name কে বোঝাবে।

কৃতজ্ঞতাঃ এই লেখা তৈরি করতে দরকারি তথ্য নেয়া হয়েছে Wikipedia, আকর বই "'Design Patterns:Elements Of Reusable Object-Oriented Software' by Eric Gamma,Richard Helm,Ralph Johnson and John Vlissides(Addisson-Wesley.1994)" ও আমার তৈরি করা নানা program থেকে।
মন্তব্য ও যোগাযোগঃ mrh4478@gmail.com

Wednesday, April 3, 2024

La Semaine Dernière A Mes Yeux




(30 mars --- 05 avril)

Cliquez pour voir/cacher
Ma Semaine Gastronomique
Date Petit déjeuner/Début de jeûne Déjeuner Dîner Snacks,Sucreries,Boissons et Fritures/Fin de jeûne
30 Riz,Pouler,Soupe aux lentilles ---- --- Pois chiches,Khichuri,Omelette
31 Riz,Poisson curry,Yaourt --- --- Riz,Pois chiches,Pomme de terre,Épinard d'Eau
01 Riz,Tilapia poisson avec pomme de terre --- --- Riz,Pois chiches,Petit poisson
02 Riz,Œuf dur,Petit poisson --- --- Riz,Pois chiches,Moringa avec lentilles
03 Riz,Œuf dur, Pomme de terre,Moringa avec lentilles --- --- Riz,Latya poisson,Faluda,Yaourt,Jilebi,Pianju
04 Riz,Latya poisson,Œuf dur,Pomme de terre bhaji,Faluda --- --- Riz,Pois blanc avec tête de chèvre,Faluda,Yaourt
05 Riz,Pois blanc avec tête de chèvre --- Riz,Pois blanc avec tête de chèvre Pois chiches,Pois pitha(Gâteau traditionnel)