Friday, December 27, 2019

Hikes in Death Valley National Park

During my recent visit to Death Valley National Park, it was a breathtaking experience to absorb the variety of trails and landscapes it offers in just a few miles apart from each other. Starting from sand dunes to canyons to basins to trails, and adding to it the changing ambience at different times of the day and at different altitudes - it's a must for nature lovers.
Some intensive research and study went into planning the trip and reading through the guides to make sure we can make the most of the trip. Here's a detailed hiking guide for Death Valley. Some statistics may vary across the different websites of National Park Service and social sites like AllTrails based on route taken. The details here are focussed on NPS data.

Current Weather - A beautiful day can suddenly surprise us in this unpredictable landscape, hence a good study of the weather forecast is an essential ingredient for planning. The last thing we want is to get stuck in snow, closed roads, hailstorms or rains in the middle of the memorable moments of our life. Here's the current weather right now.

Trailheads - The starting points of the trails are shown below, click on the expand bar on the left top below to see the names of each.



Easy Hikes - The hikes are termed easy when the distances are very few miles and accompanied by almost negligible elevation gain and thus suitable for everyone.

A) HARMONY BORAX WORKS - This is located near a historic mining site where the mule wagons started their famous journey. This is around 0.4 mile round trip and has an elevation gain of less than 50 feet.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

B) SALT CREEK INTERPRETIVE TRAIL - The Salt Creek Interpretive Trail is one of the short yet most well-known trails of Death Valley and home to some rare fishes. This is also around 0.5 mile round trip and has nearly zero elevation shift.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

C) BADWATER SALT FLAT - The Badwater Salt Flat at Death Valley is one of the largest in the world and the lowest point in North America. At many places the salt forms a thin crust over mud so tricky to stray away from known paths. The salt flat forms amazing patterns with accumulated salt crystals and constantly changing temperatures. This is around 1 mile round trip and has nearly zero elevation shift.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

D) NATURAL BRIDGE CANYON - The Natural Bridge Canyon is a trip into exquisite views inside a canyon and gifts us a marvellous naturally formed picturesque bridge. This is around 1 mile round trip and has 180 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

E) MESQUITE FLAT SAND DUNES - With a plethora of  views at different times of the day casting immersive shadows, the Mesquite Flat Sand Dunes truly are a gem in this vast valley. This is around 2 miles round trip and has around 185 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

Moderate Hikes - The hikes are termed moderate when the distance and landscape elevation gain combined often requires us to stay in moderately good shape or otherwise might need rests and breaks to catch our breath a few times. Hence choosing the hike category is always a wise decision before we embark.

F) UBEHEBE CRATER RIM - This is a hike around the rim of a deep volcano. Going a little further around the loop we can see the Uberhebe Crater in all it's glory. This is around 1.5 miles round trip and has an elevation gain of 500 feet.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

G) DARWIN FALLS - The Darwin Falls is drinking water! It's a desert waterfall and the path maybe slightly rocky but it's a nice trip and back. A SUV or similar vehicle is prefered on this route. This is also around 2 miles round trip and has 450 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

H) BADLANDS LOOP / GOLDEN CANYON / ZABRISKIE POINT - The trailheads start at Golden Canyon and Zabriskie Point. These are hikes through pretty colorful canyons carved across colorful rocks. The recommended route is starting at either of these points and looping back through Gower Gulch. This is around 2.7-5 miles round trip and has 535 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews (view only Zabriskie Point reviews)

I) DESOLATION CANYON - A beautiful trip through the colorful rocks of the canyons provide cherishable moments to capture. This is 3.6 miles round trip and has 600 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

J) SIDEWINDER CANYON - With a twisted formation of rocks and passages, an exciting hike awaits everyone in this canyon. This is around 5 miles round trip and has a 1,580 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

K) FALL CANYON - If the rock formations weren't enough, look for the steepness in this canyon and if you're lucky, a glimpse of bighorn sheep might prop up out of nowhere. This is around 6 miles round trip and has 2,460 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

L) DANTES RIDGE - A miraculous view as far as the eye can go, Dante's View point is one of the main attractions in Death Valley National Park. The best art is there is unobstructed view of the entire landscape. This is 8 miles round trip and has a 1,200 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

M) PANAMINT DUNES - The exquisite dunes are best watched during sunrise or sunset when the shadows mark their shapes prominently. This is 7 miles round trip and has near 1,028 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

Difficult Hikes - The hikes are termed difficult when the distances and elevation gains combined requires us to stay in excellent shape or else is advisable to avoid the risk. Choosing a difficult hike is recommended only with full preparation of atleast 3 litres of water per person, and after knowledge of the current road and weather conditions.

N) MOSAIC CANYON - Colorful polished rocks mark the specialty of this canyon over narrow passages and bends. This is 4 miles round trip and has an elevation gain of 1,200 feet.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

O) WILDROSE PEAK - A hike through the woodlands offers amazing views every now and then. The rocks and gravel are similar to the other hikes. Due to the elevation gain snow can be expected at times. This is about 8.4 miles round trip and has 2,200 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews

P) TELESCOPE PEAK - If the road is not closed due to winter conditions, highly recommended is to answer the call of the highest peak in Death Valley. All the prerequisites of attempting a difficult trail applies strictly here. This is around 14 miles round trip and has 3,000 feet elevation gain.

➤ View Images  ➤ View Videos  ➤ View TripAdvisor Reviews  ➤ View AllTrails Reviews



Queries? Feel free to connect.

Friday, March 22, 2019

আহ্বানের ছায়াতে

নিউ ইয়র্ক । নামটার মধ্যেই রয়েছে এক নতুন চকচকে ঝকঝকে ব্যাপার । লা গুয়ার্দিয়া এয়ারপোর্টে নেমে পাশে একটি বেকারি থেকে ব্রেকফাস্ট করে নিউ ইয়র্ক সিটি-পাস কিনে হোটেলে পৌঁছানোর মাঝেই আভাস পাওয়া যায় গতিশীল স্রোতের জালে নিখুঁত ভাবে বোনা প্রতিটি মানুষের দৈনন্দিন জীবন । রাজকীয় অট্টালিকার ঔজ্জ্বল্যের বিপরীত চিত্র শহরের বহু গলিতে স্পষ্ট করে দেখিয়ে দেয়ে একবিংশ শতাব্দীর অনিচ্ছয়তা ।

চারদিকের অজস্র সাইনবোর্ড ক্রমাগত জানাতে থাকে নম্বর আর লাল নীল হলুদ রুটের সাবওয়ে যাতে করে ম্যানহাটানের যেকোনো প্রান্ত থেকে আরেক প্রান্তে পৌঁছে যাবে কেউ নিমেষের মধ্যে । ফাইভ ষ্টার রেস্টুরেন্ট থেকে শুরু করে স্ট্রিট ফুডের স্বাদে বৈচিত্রের সীমা মাপতে মাপতে ঝলমলে বিকেলে স্ট্যাচু অফ লিবার্টির কাছে ইতিহাসের তীব্র স্রোত গ্রাস করলো এলিস আইল্যান্ড মিউসিয়ামে । কঠিন পরিস্থিতি থেকে সুদিনের আকাঙ্ক্ষায়  মাসের পর মাস প্রাণ ঝুঁকি করে আটলান্টিক মহাসাগর পারি দেবার কাহিনী আরো রোমহর্ষক করে তোলে এলিস আইল্যান্ডের বিখ্যাত ইমিগ্রেশন রেজিস্ট্রি হলকে । প্রতিটি সিঁড়ির ধাপ, জানলার বাইরের দৃশ্য, গাছের পাতার ফাক দিয়ে হলের মেঝেতে সূর্যরশ্মি, ইতিহাসের মুহূর্তগুলোকে মিউজিয়ামের বাঁধানো ফটোফ্রেমের থেকে উঠিয়ে এনে এক অদৃশ্য মায়াজাল ছড়িয়ে দেয়ে । একের পর এক ঘর আর তার বিবরণ অদৃশ্য মুহূর্তগুলোকে প্রাণবন্ত করে অন্য রকম এক পরিবেশ সৃষ্টি করে ।

ওয়ান ওয়ার্ল্ড ট্রেড সেন্টারের জোরালো উপস্থিতি এবং সংশ্লিষ্ট সাম্প্রতিক ইতিহাসকে উপেক্ষা করা অসম্ভব নিউ ইয়র্কের মাটিতে দাড়িযে । গ্রাউন্ড জিরো রয়ে গেছে বেদনা, কৃতজ্ঞতা, প্রার্থনা, ব্যর্থতা, প্রত্যাশা, স্মৃতি, নিষ্ঠুর বাস্তবের সাথে সংঘর্ষের স্মারক হয়ে । বিষন্নতার পরিবেশ কাটিয়ে উঠে আধুনিক প্রযুক্তি দ্বারা আকর্ষণীয় প্রতিরক্ষা চারদিকে এখন চোখে পড়ার মতন । ইন্টেলিজেন্স এজেন্সীগুলির সাথে প্রযুক্তির সংমিশ্রনে নিরাপত্তার ঘেরাটোপে রাতের টাইমস স্কোয়ারের অতুলনীয় প্রাণবন্তে আমেজসিক্ত হওয়ার পর তার রেশ কাটতে কয়েকশ বছর লেগে যায় ।

Friday, January 11, 2019

সময়ের আঁকে বাঁকে

সেপ্টেম্বর মাসের ঝলমলে রোদে মার্কিন যুক্ত রাষ্ট্রের পশ্চিম প্রান্তে হারিয়ে যাওয়ার স্বপ্ন দেখলাম একদিন । কিছু বৈশিষ্ট আছে পশ্চিম দিকের লাল মাটির দেশে যা দেখার চেও বেশি অনুভব করা যায় শুধু । ভাগ্যক্রমে ঠান্ডা পড়ার আগেই ঐতিহাসিক সব যুদ্ধের সেই পীঠস্থানে যাওয়া হলো । গাছ পশু প্রাণী সব আলাদা ... অবাক রকমের বৈপরীত্ব জাস্ট কয়েকশো মাইল এদিক ওদিকের মধ্যে ... শুকনো লাল মাটির দেশে সব কিছুই অন্য রকম লাগে । পথের ধারের বিশাল বিশাল লাল পাথর থেকে শুরু করে গাড়ি থেকে নেমে গ্যাস ভরার সময় যত দূরে চোখ যায় ততদূর রোমাঞ্চকর উঁচুনিচু ল্যান্ডস্ক্যাপের দিকে তাকিয়ে চোখের সামনে ভেসে ওঠে কয়েকশো বছর আগের সিউক্স, আপাচে ও নাভাজো উপজাতিদের জীবিকা । বহু জায়গাতে তাদের দোকান ও ষ্টল ও মিউজিয়াম এ গিয়ে কথা বলে জানা যায় মানুষ আজ যেমন তখনও তেমনি ছিল ... পার্থক্য হচ্ছে শুধু আজ রয়েছে ইউনাইটেড নেশনস আর জি৮ সামিটের শৃঙ্খল আর তখন ছিল যার যত বড় আগ্নেয়াস্ত্র । যুগ যুগ ধরে যারা দাপিয়ে বিচরণ করেছিল উত্তর থেকে দক্ষিণ, যারা ঘোড়ার পিঠে চড়ে অভ্রান্ত নিশানায় করতো বাইসন শিকার, যাদের বীরত্বের প্রতীক নিউ মেক্সিকো থেকে শুরু করে অ্যারিজোনা হয়ে উটাহ থেকে ডাকোটা অবধি পাওয়া যায়, যাদের ইনস্টাগ্রাম পেজ এ আজও ফুটে ওঠে গভীর যন্ত্রণার আর্তনাদ, যাদের আত্মসমর্পনের হাড় হিম করে দেওয়া কাহিনী বরাবরের জন্য রাঙিয়ে দিয়েছে মার্কিন ইতিহাস - সেই তাদের পদধ্বনি অসম লড়াইয়ে নীরব থেকে নিস্তব্ধ হয়ে নিষ্প্রাণ অশ্রূ রয়ে গেলো বিশ্বাসঘাতকতার দৃষ্টান্ত ট্রেইল অফ টিয়ারস নামে বিখ্যাত হয়ে ।

লেক পাওয়েল নামে পরিচিত সুগম ও ইতিহাসের পাতা থেকে উঠে আসা এই বিস্ময় উপলব্ধি করতে হলে অবগত হতে হয় গত সহস্র বছরের ইতিহাসের সাথে - বিশেষ করে ১৯৫৬ - ৬৬ সময়টি গ্লেন ক্যানিয়ন বাঁধের আবির্ভাব এবং আপার বেসিনে জল সঞ্চয়ের মনুষ্যসৃষ্ট এই অভিনব লেকের গল্প । গ্রান্ড ক্যানিয়নের প্রকাণ্ডতা ও রোমাঞ্চে ভরা রোদ আর ছায়ার রেশ কাটার আগেই ছোট্ট শহর পেজ থেকে একটু দূরে নাভাজো স্যান্ডস্টোনের রঙিন প্রদেশে গাঢ় নীল আহ্বানে ভেসে পড়লাম। মোটর চালিত নৌকার ছাদের থেকে প্রকৃতির নিঃস্বার্থ আবেগের প্রলেপে মিশে গিয়ে অনুভব করা যায় তীব্র এক জীবিত উপত্যকার গভীর কাহানি - যেখানে জলের থেকে শুরু করে দুদিকের পাথররাও জানাতে চায় তাদের বছরের পর বছরের অবক্ষয়ের ও সহিষ্ণুতার অমর শিলালিপি । গ্লেন ক্যানিয়নের সান্নিধ্যে আর অভিভাবত্বে প্রতিনিয়ত নিজেকে আবিষ্কার করে চলেছে এন্টিলোপ ক্যানিয়নের ভেতর দিয়ে প্রবাহমান ৫০০ ফুট গভীর মেঘের রঙে তাল মিলিয়ে নীল উন্মাদনা । স্যান্ডস্টোনের ঝলমলে সময়ের রঙের বহির্প্রকাশ দেখে ভুলে যাই কোন দিকে তাকাবো আর কিসের ছবি তুলবো - প্রাচীনত্বের সুরে বয়ে চলার সাথে সাথে অবিরাম তীক্ষ্ন চমক । সময়ের জালে বোনা গভীর পাওয়া না পাওয়ার স্রোতে ভেসে যেতে যেতে পাথরের ক্যানভাসে প্রকৃতির অন্তর্লিখনের রহস্যোদ্ধার করার আকর্ষণ যে মোহময় অনুভূতির সৃষ্টি করে সেই স্মরণীয় মুহূর্ত গুলোই সব চেয়ে বড় প্রাপ্তি ।

Wednesday, December 19, 2018

Unix find Lines containing specific string, then Cut and Insert these Lines after specific Lines containing another specific string

The world of data integration and transformation gets more and more exciting every day. Where we have data fuelling intelligent applications, and transformations paving the way to create cleaner and leaner data. Let's dive in to some sorting and ordering transformations using shell scripting which will subsequently be triggered via ODI. We now have an interesting scenario where we have to identify all the records having the string "Parmesan Cheese", and after identifying the unique identifier, we have to cut this record and paste it under the immediate next record having the string "Filet Mignon" with the same unique identifier. Let's see a quick example below:

Base Dataset:
"X1","Y1","Z1","Parmesan Cheese","Yummy","Delicious"
"X1","Y1","Z1","Grilled Salmon","Amazing","Tender"
"X1","Y1","Z1","Filet Mignon","Juicy","Exquisite"
"X2","Y2","Z2","Parmesan Cheese","Yummy","Delicious"
"X2","Y2","Z2","Grilled Salmon","Amazing","Tender"
"X2","Y2","Z2","Filet Mignon","Juicy","Exquisite"

Required Dataset:
"X1","Y1","Z1","Grilled Salmon","Amazing","Tender"
"X1","Y1","Z1","Filet Mignon","Juicy","Exquisite"
"X1","Y1","Z1","Parmesan Cheese","Yummy","Delicious"
"X2","Y2","Z2","Grilled Salmon","Amazing","Tender"
"X2","Y2","Z2","Filet Mignon","Juicy","Exquisite"
"X2","Y2","Z2","Parmesan Cheese","Yummy","Delicious"

The below Unix script will process the data as per our required logic. First it will create a lookup file lookup.txt containing all the records having "Parmesan Cheese".

lookup.txt
"X1","Y1","Z1","Parmesan Cheese","Yummy","Delicious"
"X2","Y2","Z2","Parmesan Cheese","Yummy","Delicious"

In summary, for each record being read in getEntireRecord from this lookup file, it will take the getUniqueRecIdentifier ("X1","Y1","Z1") and find the line number lineNumOfFiletMignon (3) of the "Filet Mignon" record having same identifier ("X1","Y1","Z1"). Now we know where to insert the "Parmesan Cheese" record getEntireRecord - the line number will be lineNumToInsertParmesanCheese which is the next line, so add one (3+1=4).

Full logic:

filename="file.txt"
grep 'Parmesan Cheese' $filename > lookup.txt
lkpfilename="lookup.txt"

while read -r line
do
readLine=$line
getUniqueRecIdentifier="$(cut -c1-8 <<<"$readLine")"
getEntireRecord="$(cut -c1-100 <<<"$readLine")"
generateSameIdFiletMignon=$getUniqueRecIdentifier""',"Filet Mignon"'""
lineNumOfFiletMignon="$(grep -n "$generateSameIdFiletMignon" $filename | head -n 1 | cut -d: -f1)"
lineNumToInsertParmesanCheese=$((lineNumOfFiletMignon + 1))
sed -i ''"$lineNumToInsertParmesanCheese"'i '"$getEntireRecord"'' file.txt
lineNumToBeDeleted="$(grep -n "$getEntireRecord" $filename | head -n 1 | cut -d: -f1)"
sed -i ''"$lineNumToBeDeleted"'d' file.txt
done < "$lkpfilename"

rm $lkpfilename

Detailed Explanation: To identify lineNumOfFiletMignon we are using grep -n as seen below, with head -n 1 to get the first record for the specific combination, even though we know it will give only one record in our case. Then we have cut -d: -f1 to get the first column as the Unix line number.

lineNumOfFiletMignon="$(grep -n "$generateSameIdFiletMignon" $filename | head -n 1 | cut -d: -f1)"

Now we are adding one to lineNumOfFiletMignon to get lineNumToInsertParmesanCheese.

lineNumToInsertParmesanCheese=$((lineNumOfFiletMignon + 1))

Once we have identified lineNumToInsertParmesanCheese we can use sed -i then the line number where we want to insert our record followed by the record string and file name. Since we are iteratively storing the entire records iteratively in getEntireRecord from lookup.txt, we are using the same in the sed -i command.

sed -i ''"$lineNumToInsertParmesanCheese"'i '"$getEntireRecord"'' file.txt

After we do the above, we are going to have a duplicate original record of "Parmesan Cheese" that has to be deleted, this is calculated in lineNumToBeDeleted by using the entire record string getEntireRecord which was retrieved from lookup.txt.

lineNumToBeDeleted="$(grep -n "$getEntireRecord" $filename | head -n 1 | cut -d: -f1)"

The duplicate original line will be removed by the below sed -i command where we are providing the line number lineNumToBeDeleted to be deleted with d at the end for deletion, followed by the file name.

sed -i ''"$lineNumToBeDeleted"'d' file.txt

Then at the end we can safely delete our lookup file, which was happily storing all the "Parmesan Cheese" for us until now!

The above activity can also be done in Excel macro, but considering the amount of maintenance and scalability factors, we are clear which option to choose now.

Sunday, August 26, 2018

ODI BI Apps Machine Learning Power-Up

Like many millenials, one of my favorite video game was Mario. The most satisfying thing about Super Mario were the power-up mushrooms - that gave it added abilities, to keep conquering world after world. Similarly, today when data and information are created at an accelerating rate, outstripping the ability of humans to keep up - it becomes imperative for enterprise operations to enable a digital workforce to achieve demonstrable gains in efficiency and productivity.

Operational Analytics, with subjective experience, is indeed very much useful - but it's more inclined towards Descriptive Analytics, based on what has already happened in the past. With Predictive Analytics, it opens up a whole new world where we can design algorithms to detect complex pattern - and provide powerful insights to predict the future. The more powerful our mathematical algorithm, and the more robust our datasets, the better we get with our statistical and strategic inferences.

With a journey that started few months back with analyzing and synthesizing vast amounts of logs generated by Oracle BI Apps, Oracle Hyperion Essbase, and Oracle Data Integrator, it's fascinating to see how today unprecedented levels of efficiency and quality can be achieved by transcending conventional performance tradeoffs. Let's coin in the term Intelligent Process Automation here - since it will not be fair to navigate this picturesque landscape without getting a deep feel of the next-gen tools forming the core of this cognitive technical process.

How does IPA fit in our ODI BI Apps Power-Up? Well, wait for it, let's put it out there in as much crispy and munchy (reminding me of chocolate chip cookies...umm..) way as possible. We get to know the answers to all the following questions today, in near real-time. When does the application encounter "ODI-10188: Error while login from OPSS" due to Authentication issues which causes critical Production ODI jobs to fail? When does the application face errors due to "Unable to create connection to LDAP" which creates fatal scenarios in complex running processes? When does the application face errors like "LDAP response read timed out" which causes ODI jobs or online OBIEE reports to error out? Can our IPA model figure out what went wrong by itself and let me know?

Now, let's see what happens when we create a model that will continuously "teach" our "agent" to "learn" from the stream of situational data, analyze the same, and respond to complex queries. What happens when we inject decision-making capabilities to enhance our "agent", such that it is able to learn and adapt with time? We start getting answers to all the following questions - how stable does the system look? Since applications and jobs running fine does not necessarily indicate everything is fine, should we be aware of any "indicators" that can serve as giving us predictive information of the future state? Why is the application or system behavior the way it is now? Which teams need to be involved right away when the system behaves in a specific pattern? Can the system auto-heal given a specific scenario and then share that information? When can we anticipate a specific good news scenario that happened in the past? How can we predict a major upcoming issue that has happened in the past? How close are we to reaching our specific target figures?

Thus with the interplay of concepts, technologies, it's fascinating to see how we are able to create strategic assets, helping us achieve unprecedented levels of efficiency, control, quality, and most importantly, speed - which is definitely poised to transform the existing workforce, with radically enhanced response times, and ofcourse, reduced operational risks.