text:
Trip Facts
|Starts From
|Ends in
|Country Visited
|Best Time
|Oct-Dec, Apr-May
|Price (per person)
|From 1,320
|Single supplement
|Internal airfare (per person)
Tour Overview
Colors of India tour takes you around the amazing destinations with rich cultural insights while visiting best of heritage sites of India. Accompanied by our professional tour guide, you will surely love to have personal travelling experience in our private tours. Enjoy the every moment of this tour while visiting Delhi, Jaipur, Agra, Udaipur and Jodhpur. Discover the diversity in culture, architectural temples, shrines, palaces, forts and taste the best of Indian cuisines too during our colors of India Tour.
We initiate our Colors of India after your arrival at New Delhi's Indira Gandhi International Airport followed by full day sightseeing around Delhi. Initially, we visit around Old Delhi, sightseeing around the popular heritage sites, Jama Masjid mosque, Chandani Chowk, red fort along with Raj Ghat memorial of Mahatma Gandhi. Further, the Humayun's Tomb, Qutab Minar and other attractions. Colors of India Tour continue towards Agra, witnessing the legacy of Mughal emperors Shah Jahan and Akbar. We first give a visit to heritage site of Agra Fort and Taj Mahal on next early morning. Further, the pink city of Jaipur offers rich cultural insights with plenty of sightseeing opportunity at historical places, forts and palaces. Similarly, Jodhpur and Udaipur are famous for temples, palaces and heritage sites. From Udaipur, we fly to Delhi and conclude our colors of India Tour.
Colors of India Tour is recommended for all travel lovers regardless their age, fitness level and interest. Join this trip with Himalayan Treasures and Travels and have a great holiday time while visiting incredible India. Contact us for booking and further information.
Private journey | Based on double occupancy | *Subject to change
Day 1: Arrive Delhi
Arrive late evening at the New Delhi's Indira Gandhi International airport. You will be met by our representative outside the customs gate and escorted to your hotel.
Overnight in Delhi.
Day 2: Delhi
Enjoy a full day guided tour of Delhi.
The city consists of two parts – Old and New Delhi. Old Delhi was the capital of Muslim India between the 17th and 19th century and has many mosques, monuments and forts.
Begin your day with an exploration starting in Old Delhi. Visit Jama Masjid, the Royal Mosque which was built by the Mughal Emperor Shah Jahan in 1656. Enjoy a cycle rickshaw ride through the narrow lanes followed by a short walk on the main street of Old Delhi – the colourful shopping bazaar known as Chandni Chowk. Drive past the Red Fort (a UNESCO World Heritage Site) built by the Mughal emperor Shah Jahan. Continue to Raj Ghat, the memorial to Mahatma Gandhi.
In the afternoon visit New Delhi – the imperial city created by the British as the capital of India. In 1911, Edwin Lutyens, the most renowned English architect of the day, was chosen to design New Delhi. Drive through the majestic boulevards – the Rashtrapati Bhawan is where the Viceroy once lived and is now the official residence of the President of India. View India Gate, a war memorial arch built in honour of 90,000 Indian soldiers who lost their lives in World War I. Visit Humayun's Tomb (a UNESCO World Heritage Site), the first great example of Mughal architecture in India. The day's tour ends at Qutab Minar (a UNESCO World Heritage Site) – a soaring tower of victory which is 72.5 metres high and has five distinct stories.
Overnight in Delhi.
Day 3: Delhi - Agra
This morning drive to Agra.
Arrive Agra in the afternoon and check-in at your hotel.
Two great Mughal monarchs, Akbar and Shah Jahan, transformed the little village of Agra into a befitting second capital of the Mughal Empire – giving it the name Dar-ul-Khilafat which means seat of the Emperor. Today, a visitor to Agra is caught up in a world of contrasting edifices whilst experiencing the irresistible charm that this favourite city of the Mughals still retains.
Late afternoon visit the Agra Fort (a UNESCO World Heritage site). The fort was built by the third Mughal Emperor, Akbar. Subsequent additions were made to the fort by his son Jahangir and grandson Shahjahan.
Overnight in Agra.
Day 4: Agra - Jaipur
Early morning enjoy a sunrise visit to the mesmerizing Taj Mahal (a UNESCO World Heritage Site).
The 17th century Taj Mahal is often called a poem in stone. If so, the mausoleum is a love poem – created by Shah Jahan for his favourite wife Mumtaz Mahal. Please note: Taj Mahal remains closed on Fridays.
Return to hotel for breakfast.
This morning drive to Jaipur. En route, stop at Fatehpur Sikri (a UNESCO World Heritage Site) – a deserted red sandstone city built by Emperor Akbar as his capital and palace in the late 16th century.
Arrive Jaipur Agra late afternoon and check-in at your hotel.
Overnight in Jaipur.
Day 5: Jaipur
This morning enjoy an excursion to the magnificent Amber Fort. The fortified palace was the capital of the state of Jaipur until 1728. The architecture is a blend of Mughal and Rajput styles. Tour the chambers and hallways of the palace, which are famous for the excellence of their design and decoration including the spectacular "Hall of Mirrors".
Later enjoy an orientation tour of Jaipur. Visit City Palace and its museum which has a superb collection of Rajasthani costumes and armoury of Mughals and Rajputs including swords, antiques and artifacts. Proceed to Jantar Mantar, a stone astrological and astronomical observatory which was built by Maharaja Jai Singh in the 18th century. Enjoy a cycle-rickshaw ride in the colourful bazaar of the old city. Also visit Hawa Mahal or the "Palace of the Winds." This beautiful façade is probably the most-photographed in Jaipur. Its ornately carved windows were designed so that the ladies of the palace could look out onto the streets unobserved. There is also time to shop for Jaipur blue pottery and block-printed cotton linens.
Remainder of the day will be at leisure for independent activities.
Overnight in Jaipur.
Day 6: Jaipur - Jodhpur
This morning drive to Jodhpur, once the capital of the former princely state of Marwar. It was founded in 1459 by Rao Jodha and is now the second largest city of Rajasthan. The graceful palaces, forts and temples bring alive the historic grandeur, while the exquisite handicrafts, folk dances, music and the brightly attired people lend a romantic aura to the city.
Arrive in Jodhpur and check-in at your hotel.
Late afternoon, enjoy a short orientation tour of Jodhpur city. Visit magnificent Mehrangarh, one of Rajasthan's finest forts. This 5,000 metre long fort is an impressive and formidable structure. There are seven gates that lead into the fort, inside a series of courtyards and palaces to be found. Make a brief stop at Jaswant Thada, located a short distance from the fort, which is a white marble memorial to Maharaja Jaswant Singh II.
Later, enjoy a walking tour through the ancient blue town where there will be opportunity to explore the narrow winding lanes, ending at the Old Clock Tower vegetable and spice market.
Overnight in Jodhpur.
Day 7: Jodhpur - Udaipur
En route visit Ranakpur Temples. Ranakpur boasts some of the most exquisite Jain temples in the country, famous for their intricate friezes and sculptures, and is one of the holiest Jain sites in India.
Arrive Udaipur late afternoon and check-in at your hotel.
This evening you will be taken to City Palace to experience and enjoy the Holika Dahan Ceremony.
Holi (Holika Dahan) Festival, Udaipur: The regal festival of Holika Dahan perpetuates centuries-old time-honored traditions. The regal festival represents India's eternal fascination with celebration of life through the many seasons. Holi, one of the most popular of Indian festivals, is celebrated when winter gives way to spring. Holika Dahan is the festival's first day when the pious fire is lit on the full moon night of Phalguna (one of the 12 months of the Hindu calendar). According to Hindu mythology, it demonstrates the triumph of divine power over demonic strength.
At the Holika Dahan ceremony held at the city palace complex, Udaipur, witness a magnificent palace procession, observe royal etiquette and ritual as you look upon the royal parade in their traditional attire-finely liveried palace staff, elegantly bedecked horses and the impeccably turned out band that leads the cavalcade through the Palace from the Royal residence to Manek Chowk. After the religious ceremonies, as twilight descends, you can look forward to the lighting of a traditional sacred fire where an effigy of the fraudulent Holika is burnt. This is followed by local people performing the "Gair", a traditional folk dance performed specially on the occasion, which you will discover yourself, can be quite infectious!
Overnight in Udaipur.
Day 8: Udaipur
This morning you will be invited to by the hotel to experience and share the holi celebrations with the family. The celebration and festival lasts till noon and after that time is free at the hotel.
In the evening enjoy a boat cruise on the placid waters of Lake Pichola. From the boat view the city of Udaipur rise majestically above the lake in the middle of the Rajasthan desert. Also visit the Jag Mandir Palace, an unforgettable sight on an island in Lake Pichola, built by Maharana Karan Singhji in 1622 as a pleasure palace for royal parties and functions.
Overnight in Udaipur.
Day 9: Udaipur - Delhi. Departure.
This morning free for independent activities.
In the afternoon you will be escorted to Udaipur airport for flight to Delhi.
Arrive Delhi and transfer to International Airport for your flight to onward destination.
|1 & 2
(Superior room)
(Superior room)
|4 & 5
|Marriot Jaipur
(Deluxe room)
|Rabanka Palace
(Club room)
|7 & 8
|Ramada Resort & Spa
(Deluxe room)
– 8 nights accommodation in hotel as listed or similar
– Daily breakfast
– Arrival and departure airport transfers
– All sightseeing and excursions with English speaking local guide
– Transfers as per itinerary on private air-conditioned car (Toyota Innova/SUV – up to 2 guests)
– Complimentary bottled water on board
– Monument & museum entrance fees
– Government taxes
– International air ticket (we will be happy to book your flights)
– Expenses of personal nature like beverages, room service, telephone calls, porterage, laundry etc
– Any meals except mentioned in quote include/program
– Gratuity to driver/s, guide
– Visa fee
– Travel insurance (highly recommended – click here for details)
– Any other services/items/activities not mentioned in quote include
– Additional expenses due to events beyond our control i.e. flight delays, natural calamities etc.


text:
Green living, conceptual artwork
F006/9932 Royalty Free
Please login to use the price calculator
Credit: VICTOR HABBICK VISIONS/SCIENCE PHOTO LIBRARY
Release details: Model release not required. Property release not required.
Keywords: animal, architecture, artwork, butterfly, concept, conceptual, conservation, eco, eco friendly, ecological, ecology, ecosystem, environment, environmental, environmental conservation, green, home, house, idea, illustration, living, nature, plant, preservation, white background
Licence fees: A licence fee will be charged for any media (low or high resolution) used in your project.

subset: commoncrawl


text:
0 Flares 0 Flares ×
6612 W LOWELL, Nine Mile Falls, WA
Just Listed
$ Click for current price
Presented By:
Property Description
Investment 2.35 acre in PATH OF PROGRESS. Zoning will allow up to 14 home or duplex lots as when G M Boundary expands to include this area. Working on getting sewer but 6 year plan is not approved yet. >City currently encouraged assisted living home (up to 6 clients with no special issues) or halfway house and treatment center of up to 8 residents, as of 11/12/15.< Current Mob Home & small studio apt has income of apx. $1200/mo. Seller will carry contract. Buyer to verify all zoning.


text:
The recent mainstreaming of a new agrarianism has generated a great deal of historical research on the origins of the movement. Conference panels have proliferated of late (especially at the annual meetings of the American Society for Environmental History and the Agricultural History Society); several graduate students are busy dissertating on agrarian themes, and a handful of articles and monographs have recently been published that situate the contemporary agrarian movement—and its foil, industrial agriculture—in proper historical context. And now Edwin C. Hagenstein, Sara M. Gregg, and Brian Donahue have given us American Georgics, an exceptional anthology that is sure to become an important introduction to agrarian writings in the United States from its founding to the present day.
There is a lot here to digest. The volume is ordered chronologically in seven sections, with instructive introductory essays to each section, biographical passages on each author, and a bibliography that will be helpful to anyone interested in digging deeper into the [End Page 105] subject. Beginning with the notion that "the connections between agrarian ideals and American identity deserve more sustained study and discussion," the editors move beyond the old debates over household and market-based farming in the early republic to argue that working the land meant, and still means, something more than pure economics (p. xix). From the economic necessity of wresting a living from the land came a rural philosophy that argued that "there is something profoundly satisfying and valuable for human beings in working the earth; and that there is something equally important to the health of society in the way that the land is cultivated" (p. 2). This idea was not unique to America, but the editors suggest that in defining the new republic—and in contesting the eventual dominance of industry, commerce, and consumption—agrarians imbued the American political economy with the moral lessons of rural life in novel ways.
Editing an anthology such as this is always about making choices, and the editors of this collection have made many good ones. It is impossible to give a detailed account in a short review. A few highlights include some favorites such as J. Hector St. John de Crevecoeur, John Taylor, Jesse Buel, George Perkins Marsh, Edmund Ruffin, Henry David Thoreau, and Louisa May Alcott from the early republic and antebellum periods; Willa Cather, L. L. Polk, Liberty Hyde Bailey, Henry A. Wallace, the Southern Agrarians, and Aldo Leopold from the Progressive Era and interwar years; and Helen and Scott Nearing, Victor Davis Hanson, Wes Jackson (who also writes a lively foreword for the book), and Wendell Berry from more recent times.
All of the above are more or less expected in such a volume, but we also get a few surprises. Selections from Alexander Hamilton's Report on the Subject of Manufactures, H. L. Mencken's "The South Astir," and Earl Butz's "Agribusiness in the Machine Age," for instance, are seemingly out of place here. But these essays give the collection depth and context, making it read like an evolving conversation instead of a set of readings isolated in time and space.
In sum, the editors succeed in bringing to light a deep intellectual [End Page 106] history rooted in the land. This collection will be of value to anyone interested in embarking upon agricultural research, and would be especially valuable as a reader for courses centered on agrarian themes.
Albert G. Way is an assistant professor of history at Kennesaw State University in Kennesaw, Georgia. He is author of Conserving Southern Longleaf: Herbert Stoddard and the Rise of Ecological Land Management (2011).


text:
Charlie Noble
The Not-So-Discontinued Series: Commodore Pearry
Welcome back to the latest installment of our occasional series, featuring some of the Charlie Noble flavors that have been discontinued, but never forgotten! I had a plan for the order of the recipe releases, but Commodore Pearry has been far and away the most requested, so ask and ye shall receive. When Commodore Pearry was developed, I had been working on several different flavor concepts for a few weeks, and just wasn't in love with any of them. There was a lot of potential in a few of them, but nothing was popping. After making another dozen or so...
Charlie Noble® Eliquid now accepts bitcoin payments for vape supplies!
We want your bitcoin! We here at Charlie Noble® pride ourselves in making it simple and easy for you to order and love your e-liquid. In this spirit, we have decided to accept Bitcoin in our online store. We hope to be your go-to online Bitcoin vape shop. Bitcoin is now available as a payment type in your checkout. All products except for recurring subscriptions will be available to purchase with bitcoin. If anyone has any feedback, comments, questions, or concerns about this new payment method, we would love to hear from you!
Charlie Noble Face-Lift
You spoke, we listened Charlie Noble celebrated it's 2 year anniversary in July of this year. We wouldn't have made it this far without the support of all of our customers, and from the bottom of our hearts, we thank you. In this perpetually changing industry, it is important to have the capacity, and more importantly, the willingness to adapt. Since the beginning, we have strived to bring you an affordable and consistent product. Over the years, we have expanded our product offerings to a total of 23 flavors spread across 356 variants. On August 1st of 2016, we will...


text:
Music Art – Twin Atlantic Song Lyrics
BESPOKE SONG LYRICS ARTWORK. Twin Atlantic.
Bespoke commission of a couple of lines from a song by the Scottish band Twin Atlantic, in a neon sign style. The mount was also signed by the band members.
Medium – Digital photographic art
Size – 100cm x 65cm
Paper – Photographic fine art paper.
Frame – framed in a modern glossy white frame.
To enquire about a commission you can either get in touch here or by phoning 07989426189.
Michael Murray Art 2017
Bespoke Art Consultancy and Gallery
Contemporary bespoke art for private residences, apartments, luxury homes, renovations, castles, and Airbnb properties.


text:
The ARRIChannel shows us how to work with Log C files in Avid Media Composer 8.1. First, for the Alexa: Working with ALEXA Log C ProRes and DNxHD material in AVID Media Composer 8.1. How to AMA link ... Read more →
Should you raise Bit Depth and Color Space before Color Grading? Part Two: RAW Video
In Part One we looked at how we can improve results from 8-bit video, regardless of where it came from. In this part we'll look at higher bit depth videos, namely 10-bit Rec. 709, 12-bit or 16-bit RAW. The ... Read more →


text:
Movement Analyst &
Certified Pilates Instructor
Anita comes from a background of dance in classical and contemporary styles. She graduated from Boditree's comprehensive program in 2002. In 2004 she graduated with distinction from Long Beach Dance Conditioning's highly respected Advances in Pilates Technique training under Master Instructor, Marie-Jose Blom. This deeply added to her existing experience and prompted further study under Eric Franklin. In 2005, she certified in the Franklin Method, emphasizing postural and biomechanical imagery techniques. Anita received her certificate in Movement Analysis (2008) through the Laban Institute of Movement Studies. Laban Movement Analysis provides a broad perception through which to observe, cue, and dialogue about movement. Pilates is the application through which she uses the Franklin Method and the LMA framework in movement re-patterning to expand clients movement potential.
Line5 Studios is Vancouver's professional Pilates centre for men and women looking for a total training experience. Effective. Empowering. Holistic. Led by Pilates specialist Mylene Perrier, a dedicated team of certified instructors offer you highly-personalized instruction. With outstanding client follow-up and support.


text:
Sunday, December 19, 2010
Take away the packaging!
I loathe most all manufactured packaging.
Are Santa's elves going to craft and present a doll strapped down by 20 wire cuffs in some plastic den of hell that says "Made in China"?
Think like a kid for a moment. Santa's elves lovingly created that doll with a specific child in mind. Then they paint a smile on it's face only to force it into a chamber of torture where this doll will surely suffocate before the child can resuscitate it on Christmas day? If this is how you're going to present gifts from Santa, why go to all the trouble of developing his story?
Again, think like a kid. You've wanted this gift for months, maybe a year. So you finally unwrap it and Daddy must whip out chainsaw or hunting knife to break through the plastic and Mommy must pull out the tweezers to undo all the knots. Then all the pointless tiny pink plastic filler is immediately lost in the new carpet of wrapping paper and everyone tries to ignore the possibility that the toddler might find the tiny plastic shoe first and possibly choke on it.
It might take an hour to liberate that doll, so your parents tell you to open more gifts as a distraction while they're all off in the corner cursing and arguing how the hell to spring the it from its plastic prison. Wow. That sounds enchanting, and so relaxing.
I wonder how many families spend Christmas day in the ER getting stitches from using a tree saw to get to those heavy duty poultry cutters cocooned in industrial plastic, the very same material used to make car bumpers.
Well, I'm not getting stitches for Christmas and neither is Mr. Golightly. If I must incur hospital stitches, I want a good story to go with them. Like I saved my family from a mother grizzly about to ruin my outdoor vacation. Or I broke through the glass of a second story window to bust up a mugging of a mother and her infant triplets (all in a row in their custom designed Italian pram). Some event that might be embellished such as to require a mask and utility belt in it's retelling. When I go to the ER or check into the hospital, I want a legend.
Let's get one thing straight. Santa's elves do NOT work at Mattel. I've no doubt that any true elf would ever work under these conditions. I'm also certain Santa's elves don't manufacture petroleum-based plastic products. No doubt they are fighting oil companies this very moment from attempting to build deep-water oil rigs near the North Pole. Imagine a farm of blowout preventers, right behind Santa's castle! Could it come to pass that we're cleaning off oil from elves?
If we're to embrace the enchantment, we must really put ourselves into the scene to get it right. Besides, it's fun scheming honest to goodness enchantment for your kids. When I'm asked if I think Santa is true, my answer is always, "Who doesn't want to believe in a person who rewards the children of this earth for good behavior for just one magical night during the dark of winter?"
My daughter asked for a bell from Santa's sleigh a few years ago. Below is what she received; antique sleigh bells nestled in reindeer moss in a birch wood box.
Contrast this to Hallmark's (keepsake) packaging of Santa's Bell. Wow. I wasn't aware that Santa uses Hallmark's Trademarked sleigh bells. I figured he had elves that forged them with some magical metal unknown to the Periodic Table.
As a child, which would you believe to be the real deal from the North Pole? Uh, how many graphic designers work for Hallmark? This is what they thought kid's would believe? Or is this what they thought parent would buy?
The wasteful product packaging sitting on store shelves is not designed to be pleasing and delight the consumer. It's designed to outshine the competition, or to not be an easy item to shoplift. So, DON'T wrap it, put it under the tree or in a stocking.
A side note on stockings: Santa does not have a contract with any candy company. His elves make the candy onsite - best to go with wax paper wrapped candy like salt water taffy. Though I do suspect that if he did go with a candy brand, it would be something that has an old world look to it like classic Mary Janes.
Ever gone to Crate and Barrel? It has a fantastic atmosphere. Why? The products on display are all removed from their packaging. A newcomer to the store is delighted by a display of pots. The customer excitedly picks just the right pot to place in their shopping basket. Stage left, enter the sales staff to kindly note that they'll pull the merchandise from the backroom. At the register, a box is presented with the manufacturer's name plastered on nearly every surface. The pot that was so appealing is lost in a mess of cardboard, plastic and paper.
Funny story. I bought my first coffee maker at Crate and Barrel. When given the model I carefully selected now hidden in a Krups box, I was tempted to say, "Can I just have the one on the shelf?" The actual product had much more appeal without the packaging. That damn packaging took the fun out of my whole purchase experience!
Packaging often does this. It steals the fun out it all and serves as a reminder that the item was not made especially for us.
Ever buy something in a box only to bring it home and find half the contents missing? I once bought two boxes of barware only to get home and discover the items filthy from another person who bought them, used them and returned them. On that same shopping trip I scored a new, vintage-inspired jacket from Banana Republic, it's $99.99 store tag directly contrasted to the Goodwill tag for $4.99.
So I went to the thrift store and bought new merchandise for a thrift price and went to the chain retailer and bought used merchandise for a new price.
A plus on thrift shopping, more often than not, is that I don't need to manage excess packaging. I get to actually touch the product I buy with my very own fingers! With thrifted clothing, you are often witness to how the product washes and wears. Ever bought an expensive new sweater only to have it pill on the first wash? I have. Tell ya what, I really don't enjoy shaving my legs. How do you think I feel about shaving a $100 sweater?
So, as you wrap the gifts you have so carefully scouted out for those you love, don't forget to take care in how the gift is presented. Take it out of the box. Get creative.
If you're afraid to take it out of the box because you suspect the recipient might return the gift, perhaps you should return the gift yourself and think a little more about what might genuinely make those you love happy. If you're having a hard time with ideas, read the post below. The perfect gift just might not require any shopping at all.
For those who've followed this blog, I will note that my youngest daughter, Little Pie, asked Santa for a record player, a quill pen and a plush horse. We have a family tradition to ask for three items. Anything more might appear greedy. Santa's gifts are usually not wrapped and prominently displayed for immediate use. Should you need to wrap a present from Santa, don't use regular wrapping paper. Remember, Santa is very old and resourceful. He doesn't shop for wrapping paper and pre-made bows. Use craft paper and twine or a tin. If your child asks why Santa didn't wrap his gift, tell your child, "That's only on TV".
If you're curious as to what Little Pie asked for last year, refer to the post, Santa's elves shop at thrift stores too!
11 comments:
My kids are 26 and 24. Santa still leaves them a gift of two in addition to their wrapped gifts. He never wraps anything. (He doesn't have time.)
- December 19, 2010 at 7:14 PM
- Shopping Golightly said...
"Doesn't have time."
That's my new strategy! Makes perfect sense!
- December 19, 2010 at 7:26 PM
- Alex M said...
What strikes me as truly pathetic in regard to the sleigh bell, was not just the over-designed Hallmark version, but that it was an advertising effort too. Hallmark doesn't sell anything for it's intrinsic value -- it has to be related to a book, movie or project currently being marketed.
Hallmakr is one of those places peddling keepsakes that are guarenteed not to be worth keeping!
- December 19, 2010 at 7:38 PM
- Laura said...
- December 19, 2010 at 10:05 PM
- Rebekah said...
This year my 4-year old daughter has asked for a yo-yo and a kite. She doesn't watch commercial television or spend much time in toy stores, so she is blissfully unaware of the latest battery-operated holiday "must have." I love that. I want her to stay that way forever.
I made the kite myself, and found a small painted wooden yo-yo for her. There will be no packaging under our tree. Just dreams come true and wishes fulfilled. Merry Christmas!
- December 20, 2010 at 6:59 AM
- Shopping Golightly said...
My family has not had cable in well over a decade and I say, "Bless those rabbit ears". The girls have asked for things like: a big bag of jelly beans, a little bag of jelly beans, magnetic rocks, a plush butterfly...
My oldest had but one wish... to fly. Maybe that's one reason she's seriously tough competition in the pool. She's so graceful, it looks like she's dancing. Aquatically, she got her wish.
Kites are so much fun, we have one in the car at all times. Just in case. Don't want to miss an amazing wind and never know when it will come along.
As for the TV toy commercials we're missing, I am still in PTSD over getting what I asked for, Hungry, Hungry Hippos. That game was NOTHING like the game the kids played on TV. No matter how we tried, my friends and I always ended up tossing that box back under the bed. What a waste of a Christmas wish from Santa. Shame on toy companies for marketing boring toys that end up on Christmas lists and are met with the hollow feeling of, "I've been suckered".
- December 20, 2010 at 7:27 AM
Is a "tip" in order here? I live in upstate NY with cable as well as FIOS available. I pay under $10 each month for service so I can see PBS shows and a few, short-term favorite programs on the networks. I had to as four times to get true "BASIC" cable; I got offered 'extended cable,' yadayadayada. I finally said: I want the service that old people on a budget get. Kapowie. I can afford $10 for this service and it's also a great value. I also have a lifetime reading plan.
- December 20, 2010 at 8:04 AM
- Willo said...
We also do three items...although one is a gift to charity. It's nice to hear someone else who doesn't feel the need to go overboard with their kids. And news wrap will be covering everything under out tree this year.
- December 20, 2010 at 8:16 AM
- Shopping Golightly said...
As far as I'm concerned, PBS is one of the great American Blessings!
We watched "Christmas in Yellowstone" from Nature last night. It's an annual tradition.
- December 20, 2010 at 8:29 AM
- suzieQ said...
When my children were home, oftentimes I would give them their presents, "in the bag it came in." As I would explain to them...you don't know what it is, do you? Why waste money, time and resources to hide it when the bag has the same result? I did this when they were older, not when they believed in Santa, but I love your idea of wrapping so that the gift looks like it came from Santa. Wonderful!
Items do look lovely when they are wrapped, but to throw all that creativity away just doesn't compute with me.
It is wonderful to read postings that resonate with me.
- December 24, 2010 at 5:51 AM
- Daisy said...
I gave gift baskets to extended family this year. Baskets came from Goodwill, the contents came from my kitchen (jam, mixes in a jar, banana bread, apples, oranges), and the "filler" was old packaging paper put through the shredder. I was rather proud of the results, and the recipients enjoyed their gifts.
Thrift rules. Every year I thrift a little more.
- December 25, 2010 at 2:28 PM


text:
Packers | Jordy Nelson expected to play
Sun, 24 Sep 2017 05:26:54 -0700
Green Bay Packers WR Jordy Nelson (quadriceps) is expected to play in Week 3's game against the Cincinnati Bengals.
Nelson was a full participant in practice throughout the week but was listed as questionable on the injury report due to a strained quadriceps. He should be viewed as a WR1 in all formats, given a favorable matchup against Cincinnati and the likelihood that Randall Cobb (chest) will be held out of action this afternoon.
Source: NFL Network - Ian Rapoport


text:
JS Party – Episode #1
Security on the Web, Node async/await, AR.js
with Mikeal Rogers, Alex Sexton & Rachel White
In this first episode of JS Party, Mikeal Rogers, Alex Sexton, and Rachel White discuss security on the web and how SHA-1 is broken, Node.js v7.6 and async/await, and this week's featured project AR.js.
Notes & Links
The topics covered in today's show:
- Security on the web
- SHA-1 is broken
- Node.js v7.6 gets async/await
Featured Project — AR.js.
- Stop using SHA-1
- The effects of SHA-1 on Git
- Multiformats
- Multihash and JS Multihash
- Observatory by Mozilla - a project designed to help developers, system administrators, and security professionals configure their sites safely and securely
- The PCI Security Standards Council - a global forum for the ongoing development, enhancement, storage, dissemination and implementation of security standards for account data protection.
- Node.js v7.6 gets async/await
- Experimenting with async/await
- co - Generator based control flow goodness for nodejs and the browser, using promises, letting you write non-blocking code in a nice-ish way.
- AR.js
Picks from the panel
Hey, everybody! Welcome to JS Party, where it's a party every week with Javascript. Alright, let's just dive right into it.
I still don't want that to be the slogan. [laughter] I want my voice to be heard that I think that's a dumb slogan. Move on...
I think it's dumb, but I like making Mikeal say it. [laughter]
That's fair... That's very fair.
That's really fair. Alright, I'm Mikeal Rogers...
I'm Alex Sexton...
And I'm Rachel White.
Alright, everybody! Let's get this party started, let's just dive right into the first topic. So Google broke the internet. I don't know why they keep pointing out flaws in the internet's security, but [whispering] they broke the internet again!
I thought they helped to disclose it, but wasn't it like some German W, some acronym...? I think it was the Germans, it's all I'm saying.
It was the Germans... Likely story. Anyway, so SHA1 hashing algorithm has been cracked. I guess in 2005 there was a paper written that said theoretically it could be cracked, but nobody had done it yet. Apparently, as of like 2010, the federal government said no government encryption can use any SHA1 algorithms, which is a pretty good indication that foreign governments have been able to crack this for a while.
Yeah... The only person I've seen strongly support SHA1 for the last six or seven years is Linus Torvalds in Git.
It's so annoying...
And not just kind of... He really was like, "You guys are all super dumb for caring about this."
I know, it's really crazy. He's still downplaying it, actually. So backing up a little bit - let's just get into what is SHA1 and what does it do. Does anybody else wanna take a crack at this, or do you want me to explain it?
I only know it from Git related stuff, so that's all...
Right, that's actually a really good way to explain it though. The way that Git uses SHA1 is kind of indicative of how everybody uses it, which is that you take a bunch of data and you say, "I want a unique identifier for this data", so you hash it. That's what Git does to every change that comes into the Git tree - it gets this hash of the data and it uses that as the identifier.
If you go to GitHub and you go to a project and then you click on Commit To and then you click on one of those Commit links, in the URL bar you'll see this randomly-generated identifier, and that is a unique identifier for that hash. The problem is that if you could forge these - that's a very small amount of data, representing a large amount of data; theoretically, if you could reverse-engineer the algorithm, you could come up with a different set of data that would also hash to that same thing. People have been theoretically able to do this for a while and now they really can...
It still costs like a hundred thousand dollars. It will be cheaper, but right now, with the current algorithm... It's insane how much faster they can do it, but still, with AWS spot instances it costs around a hundred thousand dollars to break a random thing.
But how much do I have to pay Russian hackers that have a botnet? Like one Bitcoin, which is roughly twenty thousand dollars?
I wouldn't necessarily be worried about this... Sorry, I didn't hear that.
I was saying I'd probably need to pay one Bitcoin, which is roughly twenty thousand dollars, to get Russian hackers to break it.
[00:04:04.14] Oh yeah, for sure. The cost is still prohibitive to the point where no one's gonna troll you with this. Someone really needs to want -- there has to be a reason someone's doing this at this point. But that will only be true for like two months, or something. People will make this better instantly, and then exploit everybody across the board.
Right, and it's pretty much a given now that governments can do this at will. What that means is that if your integrity checks involve you hashing with this algorithm, now if you're just using those checks, people can just inject malware whenever they want.
I have a question. If this has been relatively not super secure for a while, what was the catalyst for people to be like, "Okay, it's finally time to stop using this thing"? Was it something that Google did that you said...?
Oh yeah, yesterday.
Yeah. Well, honestly, I think most people in the security community have felt since 2005 that you should stop using this. There are other algorithms that are just as good that don't have this problem. And in 2010, most reasonable companies said, "Hey, we should stop using this."
Browsers already don't allow -- you'll get a very big red X instead of a green lock if SHA1 is used for web security stuff. It's been well known to be very crackable by someone with a ton of money for a long time.
Yeah, but like Alex said, Linus Torvalds has just remained unimpressed by evidence, so it is still in heavy use in Git, in GitHub, and a bunch of other Linux-related stuff.
That's fine, because I'm wholly unimpressed by him, so it's okay. [laughter]
You're only gonna make him stronger.
To answer your question though, the thing that happened yesterday was that some people from Google and 'zee Germans' came out and just said, "Hey, look, we cracked it. Here's exactly how we cracked it." So it went from theoretical to "Here is an open version of this."
To be totally clear though, they have to try a ton of things... They were able to reduce the subset that you had to brute force to a small enough amount to be significant. But it still takes a hundred and ten years of computing time, or something like that. You had to put a lot of machines into it. But that number will slowly churn down to seconds, I'm sure.
Yeah. So if you're future-proofing, don't use SHA1.
Or past-proofing. If you're just proofing at all, don't use SHA1. There's SHA256, which is essentially exactly the same, with much higher entropy, so just use that instead.
I've actually become a big fan of multihash. Have you ever heard about this?
Okay, nobody has. Juan Benet has been pushing this really hard for quite a while. He's one of the people behind IPFS, so lots of kind of distributed, peer-to-peer crypto stuff. He has really wanted to future-proof everything that he's been working on, so he started this little open source project called multi-format. What these are is essentially every time that you've gotta sit down and use a codec, or you've gotta use a particular encryption algorithm or a hashing function like this, let's just create a format that allows you to define which format you're using, so that libraries can just optionally support a bunch of different formats. And if in the future you wanna change formats, you don't break all of your clients, essentially.
[00:08:07.13] It's very similar to .mkv or .mov - all the container things for video codecs, I suppose.
Right. Although containers, oddly, do implement a bunch of features.
I mean, it does make it a lot harder, for what it's worth.
It does. It does make the attack a lot harder, but I do feel that rather than future-proofing or moving to just a better algorithm... He's just kind of dangling out this, like "Oh, prove me wrong, computer scientists!" [laughs] Which didn't work out that well for his last round of this...
Right... It seems silly to be like, "Well, you only half-broke it, so I'm gonna continue..." If you got through a half of my lock, I'm gonna go ahead and just change out the whole thing.
Yeah, rather than just like, "No, I'm gonna continue to put these half-locks on things."
This kind of reminds me that the way we think about security on the web tends to be like, "Oh, I put CloudFlare in front of it, so I'm secure now." "I added SSL, or I added TLS, so I'm secure now." But really, security is this really multi-layered thing where when you break off one layer of the onion, you need the other layers around it to still be secure, right?
Yeah. I think you almost can't even break off any of the layers of the onion. Security is really, really hard. It needs to be there at every layer, otherwise the other ones have no effect. I think an onion is a poor metaphor. A chain is much better - if you have a single weak link, then it doesn't matter; you can get through.
Yeah. I mean, if you look at some of the stuff people have been doing with OAuth for a while... OAuth jumps through all these hoops to basically do an extra layer of encryption. Initially, they kind of did that so that you could do OAuth over HTTP without TLS. But even when you added TLS to it, it's really nice to keep all that encryption there, and one of the things that OAuth 2.0 did was it just kind of got rid of that. It was like, "Oh, whatever... We're using TLS." But you can break TLS; we know that certain authorities have been compromised for TLS so people can give out bad certs... That's not a very good way to secure everything.
Sure. If you operate under the assumption that TLS is broken though, then the entire internet is broken already... The OAuth channel - if you had that extra encryption - would be broken, but then as soon as you got to that website and used it, you'd be screwed anyways if TLS is broken. So I don't think it'd be any more broken than it would already be, I guess. You're screwed, if that's the case, no matter what.
Maybe someone doesn't get your authentication credentials, but hopefully you don't reuse those anywhere else, so...
Alright. Do we have anything else to say about hashing algorithms? This is a pretty deep topic to start a Javascript show with...
[00:11:59.24] Yeah, interesting choice.
Somebody that doesn't know anything about this kind of stuff, a.k.a. me, or someone else that doesn't necessarily have to deal with the security side of the code that they write, what would be the best resource for somebody that wants to know how to actually authenticate stuff in a secure way that wouldn't anger Linus?
I don't know if I'm answering your question directly, but if you're building a website and you wanna make sure your website is secure, Mozilla Observatory is a really good option. It will scan your website, it will check your TLS certs (some of this is involved there) and then it will check content security policy... A bunch of different things, and it will give you a prioritized list of things to do. I would absolutely recommend putting any website you build through Mozilla Observatory to get that checklist, and score, and things like that.
Cool, that's awesome. I didn't even know about that site, so that is helpful.
I think also maybe we can call out a couple good application layer authentication schemes, as well. One of the problems with updating and getting rid of this is that people take their best practices from their common tools, and not using a secure hashing is not sending a very good message. Alex, you work for a bank - what authentications are you using over there?
This seems like a broad question. How do we auth our employees?
How do you auth customers? Do you actually encrypt or hash different pieces of the Stripe thing -- I hope you do... I hope that my credit card number is not just sitting there... [laughs]
Yeah, so PCI determines all of the algorithms for how you must store credit card numbers and things like that. I have a pretty good guess on what it is, but I'm not even credentialed enough to touch or look at any of that code as an early employee at Stripe. That's another one of the security precautions that PCI mandates. It is mandated by a body, but as far as all of this auth goes, I feel like maybe my security brain is coming out a little bit... The way that your password gets hacked is not hashing algorithm collisions currently.
This one's bad - I don't think too many people are using SHA1. Even if you use HMAC or SHA1 it's fine. There's even ways to make SHA1 fine, but use bcrypt to do passwords... Actually, my number one recommendation is don't implement any security stuff yourself. Use libraries that are well known and well tested. The number one rule at Stripe is don't implement your own crypto; don't invent your own crypto, because you have not thought it through correctly. That's my advice.
Agreed. I tend to rely on modules written by smarter people than me.
Right. The wide use of something signals far more security than a smart person, too. Someone can be smart and have a glaring hole that they singularly forgot because there's only one set of eyes on it. You can be pretty sure that the Rails auth stuff works pretty well, because every Saturday night it would be down if it didn't.
[00:16:00.17] Unless Linus Torvalds is maintaining that library, then...
Sure, sure, sure. [laughter] But at least it's well known. No one's being quiet about it.
Yeah. I've actually been using Sodium encryption an signing. I don't know who came up with the standard, but Mathias Buus in the Node community has gotten really into it. There's really good libraries that work both in the browser and in Node, and it's a really good, consistent, easy way to do signing encryption.
The stuff that I've seen from previous jobs that I was at where we did a lot of Node stuff was more built into CI tests, so when it would check to make sure all the tests pass, it would also check for known vulnerabilities and maybe certain NPM packages, or the way that code was written. Would that be separate to other things that people would want to integrate into their regular behavior? Or is that just another good level of authentication?
It's a good practice to -- Snyk has a service that you can plug your open source module into (I believe for free), on your GitHub PRs and stuff like that. It will check if you have any vulnerabilities, and there's obviously a proprietary version as well. That looks through your NPM tree and sees if there's any known vulnerabilities, and in fact even offers you ways to patch them and stuff like that, so it's a pretty nice tool.
But that's really just for known vulnerabilities, things we've already seen out in the wild. It doesn't really protect you against bad practices. Also, you run into this problem... Like Alex was saying, if nobody is using the module, then nobody is probably going to take the time to find these vulnerabilities early on. Using well known, well-trafficked modules will really help, as well.
I think we're pretty good there. I think that we're actually coming into the time for a break now.
[00:18:04.02] to [\00:18:51.08]
Alright, let's dive into this a little bit. A relatively routine new version of Node came out - 7.6. We do these releases all the time, but this one is a big deal, and people are making a big deal out of it because V8 got updated in the background. They've been doing a lot of work so that we can actually take new versions of V8 in point releases and not break the API for everybody, so that's been great. But in this release, async/await came out from under a flag, so now in a current release of Node you can do async/await.
I'm curious what you all think of this and what your views are on it? Before I get into my views...
I don't have a ton of opinions... I understand the two sides of this, and I feel like... I mean, I think the primary -- at least the thing people are calling their primary concern is performance of this, versus callbacks or Promises or whatever. I think that's silly, because a) it will get faster the next version, and b) it's such a small performance hit that who cares?
[00:20:08.23] It's primarily sugar; I guess there are the people who dislike sugar and there are people who like sugar. Just use whatever you want, I don't know... I dislike that this is an issue.
You're just trying to make yourself above the controversy.
Yeah, exactly.
Why don't you explain the controversy for us, Mikeal?
Look, there's a long, long argument against Promises. There's just a lot of people that don't like Promises. I actually don't care about Promises, I'm fully in the "do whatever you want, I don't care" camp...
I'm telling your wife.
...but it does get annoying that people act like this is revolutionary. A lot of the articles that were written about this feature coming into Node are like, "Node finally tackles asynchronous programming." Node 0.0.2 tackled asynchronous programming. Asynchronous programming has been part of Node since day one; it's been the hardest thing for people to get over.
And callbacks... The standard callback interfaces has kind of wrangled that into something usable and really fast. I think Promises landed a while ago in V8; people have been using Promises though since early Promise standards. Bluebird is based on the Promise standard, which is the really fast one, that people really tend to like.
I feel like people used Promises far before it was even standard in V8, or whatever.
Right. And before it was a standard, there were all these competing standard for Promises. If you go back far enough, you just could not get two people to agree on the same Promise.
Well, you couldn't get jQuery to agree with the rest... KrisZyp and Promises A/A+ that was pretty early on, I feel like... Maybe not.
So what Alex is hinting too is this fight in CommonJS over which standard would be the Promise standard. He said A/A+ because there was also Promises/B, C and I believe D, and I don't know how many letters we got up to.
No one used those, though. They were just proposals.
Right. But anyway, I think that Domenic Denicola did a ton of work just to get Promise people to agree on the same spec, or at least get everybody to stop listening to the people who were detracting. It got like a real standard in the language, which a lot of people that don't like Promises don't like. I personally prefer not to wrap this kind of state in an object myself... But one thing that you can say about it is that the browser - if you look at all browser standards - there's just no standard way to do I/O handlers. If you look at every DOM API that has to do this, they do something slightly different, and all of them are awful. And even if you don't like Promises, most of what people do in the DOM - they do the same thing, it's just worse than Promises.
So it's nice to have a standard that going forward - if you look at the Fetch API and some of these new browser APIs - you have something unified, which is so good.
To be clear, Promises made it into the DOM specification, not ECMA, right?
Well, it's sort of in both. Async/await is a feature in the JS language, and it effectively yields a Promise, and it relies on that standard. You're getting into this annoying territory where we have two standards bodies working on the web platform.
Yeah, but the Promise object doesn't have to exist in Node (the native Promise), and it just kind of does because V8 does.
[00:24:05.00] Right, but there's some really low-level hooks. Now we're gonna get into some NodeJS details. There's a lot of tracing and debugging that you can do in NodeJS, especially in production systems to really get at the underlying state that's going on. There's all kinds of different methods to get at this; Node is one of the more inspectable platforms out there; there's different types of tracing that people do, and there's also this thing called AsyncWrap, which is like an async hook into the low-level event system. In order to do that, in Node there is this thing called Make callback in C++ land that wraps the callback that happens; it's just a little function.
But Promises don't have that kind of hook yet - native Promises don't have the hook yet in V8, so there's work that needs to be done to get an equivalent thing happening at the native level, which at that point actually will make it much more valuable to use native Promises, rather than something like Bluebird. But anyway... What it all comes down to is that I think people don't actually like composing Promises into a bunch of things; they get kind of annoying and messy, and then end goal has been this async/await feature, which allows you to yield out a Promise. It's a syntactic sugar on top of what people are doing now. It is one of those more important pieces of syntactic sugar that makes this far more usable than it used to be, right?
Yeah. It doesn't tackle a lot of the core problems people have with Promises, namely error eating, right?
But I think if you're already using Promises, async/await can be a nice update to your code style. I think for the most part it's fine - you don't have to use it, no one's forcing anyone to use it. You can almost always write a little wrapper around some dependent library that uses it to switch it back to whatever you like to use... Fibers, or whatever.
Nobody uses fibers...
I know, I intentionally said something that no one uses. [laughter] But I think it's a silly argument, just because it's sugar -- most of the time, performance on it is not going to matter materially at all, and you can choose to not use it, so... Deal with it.
Yeah, that's a really good recap. [laughs] I wanted more controversy. Rachel, come in and tell me how much you love Promises real quick... I'm just kidding!
That's the thing - now that I don't write a ton of production code, I can do whatever I want. Nothing makes me angry, because if it does I'll just do it a different way, so I'm pretty much indifferent about arguments in regards to code preferences. As long as it works, I'm happy with it.
We're not gonna have very good arguments on this podcast if everybody's above arguing. [laughter]
I mean, I'll argue, but not about this... [laughter]
The question on our chat in Slack - you can join the Changelog Slack and the JS Party channel... Seth asked "Is there any argument against async/await other than performance and "syntax sugar is bad"? Well, against async/await maybe not, because it's just sugar, but there are plenty more arguments against Promises than just performance, namely error handling - I think is the number one complaint. Whenever you're inside of Promises, often times you're many levels deep inside thens and stuff, and errors can get swallowed in a way that's very, very hard to track them down, and very hard to even get stack traces back out of them when you do catch them.
[00:27:59.22] You have to be very explicit about every error step along the path, and if you're not, then things just get swallowed and you don't realize that bad things are happening in your code. It may not be the number one design flaw with them, but it's certainly the number one thing people run into whenever they set up a giant Promise-based system.
Yeah, and I think also the way that it handles errors kind of conflicts with the way that not just Node handles errors, because that wouldn't be accurate - Node doesn't have a way to handle errors, but a lot of the debugging facilities and tracing facilities in Node rely on errors and exceptions kind of bubbling up to the top... So because it's swallowing them, you lose a lot of the state and you can't figure out where you're going.
So a lot of production Node systems have issues with that particular mode. That's being worked on, right? This is all really, really early days. I think that a lot of this is going to get better over time, but people that already have a big production system kind of don't like this.
There's also a style argument or a way that people like to write code argument, and this argument is as old as time. It's just an OOP versus functional programming argument. Essentially, Promises wrap up a bunch of state in this object abstraction that you can then stack and compose, and some people think that that is a bad style of writing code, compared to more functional programming style. So there's that argument out there as well.
People have different brains, and different people's brains like these different ways of writing code.
Sure. Seth also asked, "Is there a suggestion for avoinding the error stuff and some of these other gotchas?" I don't think there's a great one... There are good, baseline rules for how to not write Promises in a way that accidentally swallow errors, but in practice, with some of the most brilliant people, it still happens almost every time, once or twice, somewhere.
So there are other mechanisms for asynchronous coding - the baseline won't be callbacks, but then you get to what people hate about callbacks, which is 'callback hell', or whatever. I'm sure Mikeal has some things to say about 'callback hell'. I don't think he can deny that callback hell exists for some people...
But then there are other async mechanisms... Async functions are coming in the future, which is a pretty fundamentally different model. And then generators, if you know that model, or another way to yield control in certain sections, and then pop back to those -- not necessarily used in the same exact ways, but generators and async functions are kind of cool because they don't swallow errors in the same way, and they make programming asynchronously look somewhat synchronous, which is pretty cool. They also because of that can be very confusing. It's very hard to stretch your brain to say, "Oh, this one character here, this one keyword caused all this stuff to happen behind the scenes", so they can be somewhat difficult to reason about sometimes. Maybe Michael has more opinions on generators and async functions, though. Or Rachel.
Yeah, before we go too deep into this though, I just wanna point out that in the browser there's actually some new features around Promises, and for error tracking and handling, specific to Promises, that I believe actually rely on the native Promises.
They're for debugging the Promises, though. Your code would still swallow it, but you might be able to see it in your tooling. Does that make sense?
[00:31:55.22] Right, exactly. But honestly, the solution to callback hell is to write code that doesn't have callback hell, the same way that the way to not swallow errors in Promises is to write code in a way that doesn't swallow the errors, right?
Yeah. Not necessarily a good solution, but viable.
Yeah. I'll also say about coroutines - there's a library called Co, that's the main thing that people use on the Node side to really do a lot of the asynchronous programming using generators. It's not in super wide use generally, but it has this huge following in China. Really big. It's actually really interesting... There's this dude DeadHorse on GitHub, but he took over maintaining some of TJ Holowaychuck's modules when TJ left...
As we all did...
He quit for Go, as you do... He took over a lot of the Co stuff, and DeadHorse is actually a really well-known programmer in China. He helps with some of the cNODE and cnpm local stuff. He's actually a great dude, I met him when I went out to China. But because he's such a presence there, I think that he has sort of like by himself propped up the coroutine stuff, and a lot of programmers in China are actually using that. There's not as big of a Promise following there, it's much more around the Co stuff. It's really interesting... It's one of the few divergences in preferences that I know that are actually geographical.
I actually only use the async module.
That's kind of not maintained anymore either.
That was not true... But back in the day, that was somewhat revolutionary. I think some of people's love for Promises came out of the bridge between Promises and callbacks that async was. It was like this weird middle ground where you didn't have to count the number of different things that had finished, or introduce multiple layers of callbacks in a row. You could kind of use the async module to flatten some of those things. But it definitely wasn't, by any means, a standard, or even internally consistent in how it worked. It was nice from a community growth standpoint, it was a stepping stone.
I think in the server space and in the frontend space, if you get popular enough somebody will make a Promise version of your thing and there will be like a following around that... Like, there's definitely that pull request. I'm actually curious, Rachel, if you see this in the hardware space at all, if there's as much of a Promise following in NodeBots and what not.
I honestly couldn't tell you, because I live in such a siloed thing. A lot of the NodeBot stuff is a very single-usage thing, so you'll have like one sensor being controlled by some other input. There's not a lot of need for a ton of Promises or stuff that you would need to have something special. You just don't run into the same kind of problems that you run into when you're writing things for the web, which is probably why I like hardware so much.
What about sequential actions? Like, you want some servo to do this, then this, then this, then this.
Oh, okay... Well, the thing that you run into the most then is when you're trying to run stuff on serial port; when you're getting data from multiple places at once and sometimes this stuff that you're waiting to happen from your sensor over Wi-Fi isn't going to happen as quickly or in sync as the stuff coming over your serial port cord, so... It is sort of an issue, but not that much. I, at least, haven't run into it that often. Plus, whenever I have to deal with a bunch of really intense -- it usually happens whenever you have to rewrite more custom C to handle new kinds of chips, and then have the C work with your Johnny-Five stuff on an Arduino or a Tessel.
[00:36:21.27] It's all like really low-level callback stuff, right? You don't get a lot of high-level proposition at that layer...
Yeah... I'm trying to think of anything that I've done recently that has been what I would refer to as callback hell, and it probably would be some Node application that I utilized graphics magic with. I'm actually interested in going in and trying out the new Node version with that kind of stuff. I think it might be really helpful for people that do a lot of procedural art-based stuff on the web, actually.
Also, there's these performance arguments right now, and honestly, even though I'm not a huge Promise advocate, I think most of the performance arguments are really dumb. But in hardware, it actually makes sense. The reason why I think that the performance arguments are stupid is that you're talking about 0.02 milliseconds I think is like the largest difference between Bluebird and Promises and native Promises. And if you're talking to the network or the file system, that's really not a thing. Your websocket delay to local host is roughly like a 3 millisecond roundtrip time, so it's just not ever gonna be noticeable.
But with a serial port, you're talking to the hardware there. It is asynchronous, but it is really, really fast, so you could actually see some of the performance stuff stack up there, and you might actually start to care.
I don't care about much, but we'll see. [laughter]
How fast can I AI this cat photo to blink this LED to...
Okay, listen, don't... Don't...
Don't pigeonhole me...
Yes, exactly. I like other animals. [laughter]
I thought you were gonna say, "I do more than just cat images."
I wish I did.
[laughs] Oh, that's awesome.
You know, I enjoy pigeons and raccoons and other various other animals that love garbage... [laughter]
We should have Isaac on, so you guys could discuss...
Oh, I've already discussed raccoons with Isaac...
I know, I just want that to be like a live voice thing.
I don't know if I ever want to have that conversation again.
Yeah, I made a mistake then.
For anyone that's wondering, Isaac from NPM - if you ever see them, talk to them about how much they love raccoons. [laughter]
They don't.
[laughs] And on that note, we're about ready for another break. When we come back, we'll talk a little bit about the featured project of the week.
[00:39:05.24] to [\00:39:54.22]
And we are back. We're gonna get into the featured project of the week, AR.js. Rachel's particularly stoked about this one, so I'm gonna let you take this over.
It's about assault rifles?
No, no...
That's version 15.
AR.js v15...
Okay, so AR.js is this really awesome library that you can use now that is augmented reality for the web using AR toolkit. It's built of a couple other different technologies. It's using three.js, it's using Mozzila's A-Frame, which is -- if you haven't messed around with A-Frame, what it does is it allows you to do web WebGL, WebVR in the browser, so you can either view things in the browser with a 3D appearance, or if you have a Google Cardboard or any other kind of virtual reality headset that phones go into - it allows you to actually see the 3D object that you have developed in virtual reality, with your phone.
What AR.js does is it blends all of these things together and allows you to use digital markers. They're using hero markers, which are these squares that have...
Little Greek burritos...
No! [laughs] They're like QR code. Basically, any kind of digital marker is just using image processing with nearest neighbor type of math-y things... I'm great at explaining things technically. Basically, what AR.js does is -- unfortunately, if you have an iOS phone it doesn't work, so I can't even test it, which bums me out... But if you have an Android phone, you can set it up so that you have your 3D environment that you've crafted with A-Frame, and A-Frame is built on top of three.js, because it allows for the 3D objects in the browser.
It's really cool. A-Frame is really accessible for people that are just starting out in Javascript. Their documentation is amazing, and pretty much what this AR.js library does is it allows you to take -- they basically took all of the difficult steps out of the equation. Everything is built together for you, the documentation on it is pretty good; it says that it runs at 60 FPS on a Nexus 6, which is pretty impressive, and there's a lot of examples of three.js things that you can do with it, so I'm excited to see what people make with it, because I'm very interested in any kind of augmented reality, virtual reality, mixed reality situation that we can do with Javascript. It's super exciting.
This is only a slight side check... So it runs at 60 FPS, and if you look at the pictures of it, it's like this blob that sits on a piece of paper, and you can look around and the blob stays on the piece of paper, which is pretty nifty. You can move it and animate it and things like that; you can spin it on the piece of paper while you look around. That runs at 60 FPS, and that's pretty verifiable on the phone. But I can't get a div to animate from 200-pixels-high to 500-pixels-high at 60 FPS. I can't get my web page to scroll at 60 FPS by default half the time.
[00:44:18.15] It's because you're not using WebGL! [laughs]
I know... I'm just always so amazed that the difference -- everybody is almost hitting 60 FPS, but the place where we're starting out is always so different... It always blows my mind when these things work quickly, that's all I wanted to say.
I mean, obviously that just means that the future of web is that it's all gonna be holograms...
I'll buy it. [laughter]
Yeah... I'm into it. I actually would be really interested in finding out -- I know that there's a device called the Leap Motion. It's a USB device that lets you essentially use your hand -- I think it's like two cameras, so it's essentially scanning the space above the Leap Motion, and when you put your hand in front of it, you get a 3D model. It's used a lot with Unity and gaming type stuff like that, but I know that there is a way to use it with WebGL, so now I'm curious if I'm able to use a Leap Motion with this augmented reality application to not only be able view holographic things through a device, but if I could couple it with another thing and try and move things around.
I'm just thinking of all the really weird and awesome stuff that people can build with this. This is the stuff that I get excited about.
Yes, and thanks in advance to Leap Motion for sponsoring the JS Party podcast, and also thanks in advance to the next company I'll give free advertising to, the Myo armband I backed on Kickstarter a long time ago. It's not quite positional, so it might not know exactly where your hand is (I feel like you could do that with a marker), but then it essentially can give you data about your exact hand position. It's an armband that goes kind of like next to your elbow, pretty far back, and it just reads the tensions in your different tendons, to know that your hand is doing a motion like a pull or a push or a squeeze or any of those different things...
Yeah, I remember seeing that.
I've actually given a few talks where you hook up the next slide and previous slide, and it's just like swipes in the air or behind your back, and then you can start animations or different things like that with squeezes... There's a whole set of default things for Keynote and stuff. It's pretty nifty, though I find that sometimes you have false positives and it'd just slide whenever you're gesturing wildly.
You could just put a marker on your hand to know a position; you can get an RFID tattoo -- or not an RFID, a QR code. Rachel, you have the RFID baked into your hand, right?
Yeah, I have an RFID chip in my hand.
Yeah, that's in solidarity with your pets.
Yeah, that's how much I love cats. I'm really dedicated.
But I think you could do some really cool stuff with not just the position of your hand, but the motion of your fingers and stuff like that, like picking it up versus pushing it, versus all that stuff. Maybe a Leap Motion plus a Myo... You just mix them all together and get a drone in there somehow...
Yeah, every single kind of crowdfunded device - put them all together and see what you can get.
This is a really cool project. This reminds me... When they first used M scripting to compile down Doom and these 3D games, when they were first doing 3D standards in the browser, and those demos that nobody really ever used were what ended up pushing the web's implementation of WebGL forward.
[00:48:06.04] Yeah, I mean... Brendan tore the conference circuit for like three years on those demos.
And he's so bad at playing it, too... It was so funny.
He eventually - after dying so quickly, so fast, so many times in front of 500 people - hacked the parameters to the game to where he can't die; he plays in god mode now when he does the demo.
Are you talking about the Sentry Chicken talk?
Yeah... The same version of that talk has different games.
Actually, one thing mashup I'd love to see with this - just spitballing here - is some sort of like... If you use a piece of paper, and then you're able to kind of draw shapes, and then press some button on your keyboard and then it AR-ifies it to where you can pick up the shape... Does that make sense? It's essentially like the style in the super futuristic movies - I feel like we're almost there, where you can draw something and then manipulate it in 3D space.
Well, there is something that exists like that. Not in the Javascript world, but there is an application called Vuforia, that allows you to create those augmented experiences where you can interact with this. So maybe somebody should do that.
Yeah, I look forward to one of our listeners from this week presenting that on the show next week. It just takes one week, right?
Yeah, yeah. [laughs] So have you all done any WebGL programming at all, or played around with any of the raw stuff?
Yeah, I have. I have a bit. I'm learning A-Frame, I'm messing around with a bunch of other various three.js stuff, and I've done some WebGL video game things. This is something that I'm super interested in. Plus, it's happening so fast... People are making cool stuff with this, and I find that the people that are actively developing interactive things for WebGL-based art are not software engineers for their day jobs, they're just multi-faceted technologists and artists that were like, "Oh, this is cool. I wanna make cool stuff for this." That's really awesome.
I haven't done a ton of WebGL stuff. A little bit for some of the Stripe splash page stuff, but I have met Mr.doob, which I feel like it's pretty much the same thing.
Okay, there you go. I've tried to use three.js and I really couldn't get my head into it. It's one of those libraries that's just so massive. I could take a demo and kind of hack it up, but I couldn't really get my head around it.
So wait... Let me get this straight. You'll build an oven to bake your own bread, but you didn't wanna do a deep dive into three.js?
Well no, it's because to get at the low-level constructs that I actually wanna figure our in order to understand how everything is built, there was too much code in the way. What I eventually ended up finding though is Mikola Lysenko and Substack live on the big island in Hawaii now next to a volcano, and they hack on this thing called Regl.
Wait, wait...
You've gotta skip over that kind of thing...
Wait, Substack lives on an island in Hawaii now?
Yeah, Substack and Mikola and Marino all moved to the big island in Hawaii, because it's cheap and because coconuts have 1,200 calories in them.
[laughs] Yeah, it's amazing.
You have to eat the skin in order to get all 1,200.
[00:51:59.16] [laughs] No, but they are building this thing called Regl. Essentially, it's various substacks modules philosophy, and Mikola is just this amazing math dude, doing all these kinds of crazy algorithms. It essentially gives you WebGL, but then adds a bunch of features and kind of modules, and you can plug in different algorithms and stuff really easily into it. But the most amazing thing about it is when you get an error in your WebGL code, you actually get line numbers out of the debugger that gives you your line number in your crazy abstract thing from Regl.
It's really well put together, and they've done a really amazing job with the tooling and the debugging side of it. I was actually able to build much cooler, quicker things with Regl than I could with three.js. Even though there's far less big demos and stuff written with it yet, I did find it easier to just kind of pick up and learn.
Anyway, I think we're nearly good. We're gonna do picks now... It's time for picks. I hope you all picked something that you like that you can link to, or you can just pull one of the many things that you've already mentioned in the podcast so far.
I'll go back and I'll just pick Regl, because it's an awesome library; I think they did a great job, and I love those guys. I hope they don't die in a volcano eruption. Oh, and I'll plug bits.coop. Mikola and Substack do consulting for any 3D programming stuff that you need - or really just any programming that you need. They're pretty amazing, and they're available through bits.coop. They're trying to do a cooperative anarco-socialist style thing for a consulting business. Check that out.
My pick will be Observatory from Mozilla, which is the security checker that I mentioned before. If you have a website and you're interested in finding the security properties of that website and what you might wanna do to increase them, such as get rid of your SHA1 certs, then check out Observatory.mozilla.org.
My pick is actually a talk, and it's Mariko Kosaka's talk on How Computers Read Pixels. It's really interesting and has great diagrams if you're ever wondering how image processing works, which is a foundation for a ton of augmented and mixed reality stuff with WebGL. It kind of helps you understand on a more fundamental level what is happening when you're looking at these AR markers.
Mariko's talks are always so good. She really dives into these concepts that everybody takes for granted, and really learns them and explains them in a really amazing way.
I know. I've told her that I really appreciate how she doesn't just explain how something's working so that it's accessible to everyone, but she also tells the journey of what lead her to want to even do that in the first place, and the struggles that she had while making it, and then the successes. Those are my favorite kinds of talks. I'm gonna try for the picks maybe every other week, between maybe a library or a project that's cool, and then other talks that I think are really great.
Of course, you can find links to all this stuff in the show notes. That's it for this week... We'll of course be back next week. Rate us on iTunes, because that's the thing that people say at the end of podcasts, so you should probably do that...
Subscribe and rate!
And be nice!
Subscribe, be nice... And yeah, check us out at JsParty.fm.
Our transcripts are open source on GitHub. Improvements are welcome. 💚


text:
Happy Easter Everyone
I thought I spare some time to wish you all a Happy Fabulous Easter. Unfortunately it lasts a day so enjoy it while it lasts 🙂
I thought I spare some time to wish you all a Happy Fabulous Easter. Unfortunately it lasts a day so enjoy it while it lasts 🙂
Hey guys,
So Easter is basically at the door, and I thought I get into the festive mood and do a make-up look for you guys. As we all know red is for Christmas and Yellow is for Easter, so I tried to incorporate the colour with my eye shadow. Pulling of a yellow eye-shadow can be tricky so that is why I wanted to show you how you can pull it off. 🙂
Now here are the step by step instructions for this Easter special look:
1. Like usual I start with a primer/concealer and use a base colour. This time I used the eye transformer palette from e.l.f. It really helps to give a more vibrant look the eye-shadow.
2. I placed a vibrant yellow eyeshadow from the e.l.f 100 palette on all of my lid.
3. I mixed 2 shades of dark brown and placed it all over my crease.
4. Then I applied a thin line of black eye-shadow to give a more defining line between the yellow and the brown.
5 I applied a winged eyeliner using a black eyeliner by golden rose.
6 Finished the eye-shadow look with the Eva Garden Mascara.
For the cheeks I used an e.l.f St.Lucia bronzer to highlight my cheek bone and the Marbert Pink blusher on my cheek. Finally I used the Mac Viva Glam by Nicki Minaj lipstick for a nice overall spring look. This is a beautiful look you can wear for a night out, brunch or dinner. It is also perfect to wear in this lovely sunny weather we have in Malta. The yellow eyes and pink lips are the right mixture of colours for this spring and even in Summer.
I hope you like this look and if you do please share this blog with your friends. Keep posted for more
It is pretty obvious the 50's era is with revived again right now especially in fashion and in Make-up. Make up has become very minimal like the 50s but is significant with vibrant red lips and bold eyeliner. Pupa has taken also the 50's inspiration and created a line of fabulous make up for us to try and have.
The line consists of 4 different eyeshadows, a beautiful vibrant green, light pink, cream and orange colours. 12.50euros
It also has 2 eyeliners one green and one brown. 10.90euros
There are also 4 beautiful lipstick one in a nude color, one in pink, another one in peach and of course in red. 10.50 euros
It also has a nice peach, pink highlighter compact. 14.75 euros
Last but not least a range of nail polishes in an light orange, nude/white, pink and orange colours.
I have been given some products by Pupa to review an one of them is the nail polish by this collection. What I love about pupa is first of all their cute packaging designs they do for the make-up and of course the good quality make up they have.
You can find Pupa in some of the pharmacies around Malta and in some places around the world especially in Italy. The only 3 places I know that definately sell them in Malta are the pharmacy in Hamrun and even in the Perfumery in Daniels shopping complex, also the Medimports in Hal-Qormi.
Thank you for following guys 🙂 keep posted for more
Hey guys,
So I will review the last product that I recently got from E.L.F which is the Makeup Artist Brush belt. I have some weddings coming up in which I will do their makeup so I thought this would come handy.
It is black PVC, but doesn't look or feel cheap or flimsy. The PVC material makes it super easy to keep clean. The belt strap is extremely generous and should fit just about any waist size. The belt folds over for easy storage, and even crammed full of brushes, it folds over easily. The belt is so easy to grab & go when you're traveling or doing someone's makeup.
Holds a ton of brushes, the only ones that wouldn't fit are my kabukis because they're too short & fat. I didn't find the holes too deep at all, it fit all of my brushes perfectly. There are 2 larger undivided pockets on the front of the belt for other random stuff like pencils or mascara, if desired. This belt looks extremely professional and is a great way to store your brushes. It is very nice to be able to see all of your brushes laid out & organized. The Elf logo is not very large and is embossed into the material, so again, doesn't look cheap or anything.You cannot beat this for $15 and I would most definitely repurchase I needed to.
That's all for now guys, I will try to create a new make up look for you guys but I haven't been liking what I did recently. I have become more of a perfectionist so I want to show you the best 🙂
How are you all doing? Sorry for not posting recently but I have been sick this weekend so I had no energy to post anything. I am back but still slowly getting better. So as most of you already know I recently bought some e.l.f products 50% off and I also bought 3 HD blush in different colors. I have heard a lot about these blushes so I wanted to see what the hype is all about myself. My first impression of the Hd blush is how small they are but apparently compared to the Make up forever they have more product. However my disappointment vanished once I tried them out.
The HD blush comes in a nice transparent tube and a nice black pump. The fist time I pumped a few product out I was impressed how pigmented they are. You really don't need to use a lot of product with these, just a small drop for each cheek is more than enough. In fact be careful if you plan on pumping it out onto your hand before applying it. I did this the first time I used it and this blush would not come off my hand. It took hours and many hand washes to get it off.
This shade aren't shimmery, but they aren't completely matte either. It gives a nice glow. You can also use a lip brush and apply it as a lip color, which looks great. Also the best thing about these blushers is that they only cost £3.75.
That is all for now, Keep posted for more reviews and make-up looks 🙂
Did it ever happen to you that you look at someone and think;" God we look so much alike".? Well recently it happened to me twice. Apart from my crazy family 😛 I do believe there are some women that do look like me or the other way round.
Recently I have been watching the TV show called Revenge which I am hooked to,and found myself wondering if in the future I will look any similar to Victoria Grayson (one of the main characters played by Medaline Stowe which is a bit of a Bitch). I know I do not look like i am her twin sister but I do find some resemblance there. All need is smaller body and to age 20 years.:P
Do you think we look alike ?
My second Doppelganger is an Indian Actress Priety Zinta. I have to admit she is closest I have to a doppelganger. I got to know about her, from an old friend of mine which told me that I looked like her and I have to admit it we do look alike.
Do you think I look alike these famous actors? 😛 It would be fun, if all of you did a post, of what you think could be your doppelganger. Can't wait to see some of your posts and your celebrity look-alike, we should call it a Doppelganger Week :).
Hello Guys,
So today is a lovely Sunny day and it is thankfully a feast here in Malta so I don't have work. I really wanted to do a make up look today but the photo's didn't come great so I will do a better one next time. In the meantime I thought I should review one of my recent buys that I got from e.l.f.
The contouring blush and bronzing power come in a nice sleek black packaging which I adore. The packaging make you think is a very expensive high quality product when in reality it is fairly cheap. When I ordered this compact I thought It would be smaller in size, but I was fairly impressed how big it actually is. I have the Turks & Caicos palette and there is also the colour in St.Lucia and Antigua which are also pretty nice.
The blushes are super nice, very pigmented and blend well onto the face. I just love the natural glow they give and how it looks on my cheeks. Some even say that they are similar to the Nars blushers which have the best blushers in the market. I wouldn't say they are exceptional but they are great value for money. They only costs £3.75 which is very cheap compared to a single Nars blusher which you would buy for over £25.
I do recommend this product to anyone especially if you don't want to spend a lot of money on Make-up. You get a good quality make up for such a cheap price. That is all for now guys
Hey guys,
Every month I look at my make up and see what I have missing that I really need. I realized that I didn't have any bronzer compacts and the one I have are slowly coming to an end. I usually use the bronzers I have on my e.l.f complete the look palette which are quite good but unfortunately when you apply it once a lot of products comes off. So recently with the 50% offer I got these two Baked Bronzers in 2 colors. I got St. Lucia and Los Cabos.
St.Lucia is a light bronzer color while the Los Cabos is a bit darker. I have to say I quite like these bronzers, they do not have any shimmer and give a nice bronze glow when applied. The pigmentation is OK but could be better because you need to apply it a couple of time to deliver the right pigmentation. These are perfect to either use them as a contouring blush for Winter or else as a nice bronzing color for Summer.
The packaging is also nice as it has a nice transparent lid and it only costs £3.75 which is incredibly cheap. I do recommend it to anyone, as who wouldn't want a cheap nice looking bronzer? 🙂
That is all for now, keep posted for more reviews and make up looks
Hello make-up lovers,
As I have told you in my previous post, e.l.f had quite a nice offer of giving everything 50% off for St.David's Day and I decided to buy some tools and brushes that I needed for quite a time.
2. Is the small precision brush which you can use to draw thin eyeshadow lines or even the eyeliner. The brush is also very soft and is perfect for liquid eyeshadows of eyeliners.
3. The angled eyeliner brush is my Favorite, it draws a nice thin line eyeliner line beautifully. This is the right brush to use when you want to draw a very thin line with a cream or gel eyeliner.
4. Lat but not least is the mascara shield which I really had to have. It happens to me a lot that I do the perfect eye-shadow and then ruin it with the mascara. This is just perfect I am proud of elf for coming with such a great idea. The shield is basically made from silicone and it stop you from having any fall-out. I find it a bit hard to use it on myself but it is definitely a must when you need to apply mascara on someone else.
I also bought some disposable lip gloss wands which I like to give to my clients with a lipstick sample to carry with them for the occasion. So they can do some further touch-ups later on. I even bought some powder applicators to also give out to clients. I once read that a participial make up artist, that she gave out powder applicators with some powder on them for the clients to have enough for touching up. I also got the eyebrow stencil to try them out but I honesty don't really need them. I do find them a bit silly and I don't like the plastic material because it sticks to my foundation and it gets dirty immediately.
That is all for now, keep posted for more. I will try to do a new make up look this weekend. Thank you all for following
Hey guys,
Recent I bought a lot of products and tools from e.l.f half the price with an offer they had for St.Davids Day. So I took the opportunity to buy some tools and more make up that I needed.
I have been meaning to buy this elf brush holder for a long time but not for the use it was intended for. I needed something to organize my space better for my lipsticks and other products. I have a 3 drawer pedestal on wheels and when I open the drawer the lipsticks or other tubes tend to move around and I hate it. I needed something to keep them in place so I bought this large brush holder from e.l.f.
It first perfectly into my drawer and might purchase more in the future if there any other offers going on. It is originally £14 which isn't cheap but I got it for only £7 which is definitely worth it. The holder is made from really thick matte plastic and it has the logo on it with a glossy tone. I definitely recommend it, if you either want to use it as a brush holder or to organize space.
That is all for now guys, keep posted for more


text:
|Message view
|« Date » · « Thread »
|« Date » · « Thread »
|Luc Maisonobe <Luc.Maison...@free.fr>
|Re: [commons math] - complex matrix inversion
|Fri, 16 Mar 2012 17:52:48 GMT
Le 16/03/2012 18:39, Ted Dunning a écrit : > If you really must do this, use a solver and feed it the identity matrix. > That is, given the matrix A, solve the matrix system AX = I > > Any solver that handles complex matrix right hand sides will do this for > you. Iterative calls to a solver with successive columns of I can also be > used to fill in columns of X. In this case, you can create a FiledMatrix<Complex> using MatrixUtils.createFildMatrix factory method (or just use a constructor of the field matrix class you prefer). Then use FieldLUDecomposition<Complex> to get the solver. > > But I strongly recommend you rethink the approach. There are very few > cases were inverting a matrix is a good idea. I strongly agree with Ted here, direct inversion is often not the better approach. Luc > > On Fri, Mar 16, 2012 at 9:01 AM, petitout <email@example.com> wrote: > >> Hi, >> >> First, congratulations for all your work ! >> >> I would like to know if there is a mean to inverse a matrix containing >> complex numbers using you library ? >> If not, do you know if it will be availble in a future release ? >> If not, do you know how can I do ? >> >> Thanks a lot, >> >> Best regards, >> >> Julien >> > --------------------------------------------------------------------- To unsubscribe, e-mail: firstname.lastname@example.com For additional commands, e-mail: email@example.com
|View raw message


text:
Utilizing IBM's Websphere Commerce to deliver high performance seamless and consistent omni-channel solution that helps clients build a complete shopping experience for their customers. Engage your customers with immersive brand experiences through contextually relevant content, marketing and promotions, while extending your brand across customer touch points.
Helping customers leverage the power of SAP Hybris Commerce solutions to deliver a digital omnichannel commerce experience. Business user tools that give your team ability to provide customers seamless opportunities to buy at every stage of their journey, no matter the complexity of your business. A single platform that covers all channels, from mobile to social to call center, ensuring your B2B & B2C customers get a great experience, every time!
Magento Commerce gives you the power to create unique, limitless, and engaging shopping experiences leveraging a rich, out of the box feature set along with seamless integrations to a robust ecosystem of third-party applications.
Software that helps unleash the potential in every team. Millions of users globally rely on Atlassian products including JIRA, Confluence, HipChat, and Bitbucket every day for improving software development, project management, collaboration, and code quality.
BigCommerce is the leading SaaS eCommerce platform for fast-growing and established mid-market brands. Online stores built on BigCommerce have higher traffic, better conversion and superior performance. You'll get a secure shopping cart with optimized checkout, enterprise-grade analytics, responsive themes and mobile commerce features, advanced marketing and SEO tools, and much more.
Avalara works within your own financial, billing, ecommerce, or point of sale system to deliver accurate tax calculations in real time via a secure Internet connection. Once configured, you don't have to worry about ever-changing, impenetrable rates, rules, boundaries, exemptions, tax holidays, reporting requirements, filing deadlines, etc. etc. etc. Their cloud-based software platform manages the complexity and simplifies the process of sales tax and other transaction tax compliance, cost effectively and with ecommerce-class scale, speed, and reliability.
The BloomReach Personalization Platform drives revenue by making the most of your digital space – ensuring the most relevant products are presented to interested visitors based on the demand of 75 million shoppers every month. With applications for commerce, including organic and site search and category pages, and role-based analytics, the BloomReach Personalization Platform makes content and products more discoverable and relevant, everywhere. BloomReach's core technology – the Web Relevance Engine (WRE) – algorithmically understands content and users, matching this with demand and intent data from across the Web. BloomReach's Commerce Suite has solutions that adapt your content to make it personal and relevant for individual users. The BloomReach Compass suite surfaces actionable product performance and recommendations that maximize revenue.
was formed out of the founders' desire to build a better breed of software and services partner; one with an environment of partnership, in which providing value was top priority. The strategy was to build a team of top industry resources and create a consulting environment based on excellence.
Expedient is a cloud and data center infrastructure as a service (IaaS) provider with local operations in Baltimore, MD; Boston, MA; Cleveland, OH; Columbus, OH; Indianapolis, IN; Memphis, TN and Pittsburgh, PA. Converged solutions enable clients to focus on strategic business innovation while Expedient handles operating the information technology needed to support it.
e-Spirit is a leader in enabling companies to unlock the value of digital content and transform the way they communicate with customers and employees. With our Corporate Content Cloud approach we are supporting our customers with their digital transformation efforts. Using the industry leading FirstSpirit™ content management system, organizations worldwide can connect all of their people, systems and applications to the centralized, real-time data, assets and information necessary to publish content with total accuracy and relevancy across all channels and devices.
Exchange Solutions designs, builds and operates Smarter Loyalty programs that uses data-driven, personalized incentives to increase valuable customer behaviors, at a lower cost than your business-as-usual marketing. Smarter Loyalty programs uncover existing customer behavior gaps and close those behavior gaps with individualized offers. These one-to-one offers are tailored to each customer in order to drive incremental behavior change.
Application performance management software company with products aimed at the information technology departments and digital business owners of medium and large businesses.
As an IBM and leading technology solutions distributor, Tech Data's (formerly known as Avnet) first priority is to deliver the most advanced solutions to ensure your success at every opportunity. Tech Data's Technology Solutions connects its partners to more customers and more solutions. Their comprehensive suite of services and established partnerships with leading technology providers ensure that you have the right combination of resources to capture new revenue-generating opportunities.
Become a partner