A good cup espresso is the Holy Grail for any coffee aficionado. When you are craving a caffeine fix, nothing satisfies better than a fine espresso. If you love a good cuppa, here are 4 gadgets that need to be a part of your life.
Bartza Virtuoso Grinder
Every coffee aficionado knows that to brew the best possible cuppa, the coffee beans have to be freshly ground. Most coffee grinders available in the market do an adequate job. However, the Bartza Virtuoso Grinder takes coffee bean grinding to an all new level. Imagine having an industrial-strength coffee grinder for the cost of a regular coffee grinder available at your local department store. It may not be the most stylish gadget in your kitchen, but the evenly ground coffee it produces is perfect for espressos and will ensure that the Virtuoso is one of the most beloved gadgets you will ever own.
Espresso Veloce V12
Are you a coffee aficionado and an auto enthusiast? If the answer is yes, you need to have Espresso Veloce’s V12 in your life. Like, right now. It may cost a small fortune and take up a lot of counter-space, but you do get a lot of titanium and aluminium for the price. What makes Espresso Veloce’s V12 really special are the small details, such as the coffee filter being located exactly where the oil filter would be on a proper V12 engine. When the espresso starts dripping down from the exhaust manifold and into the piston-head mugs, you might just start loving the V12 more than your children.
Trista Coffee to Go
A portable espresso maker is usually at the top of every coffee lover’s wish-list. While these espresso makers can give you your fix of caffeine whenever you need it, they do have a drawback – a portable espresso maker usually has enough juice for only 2 cups of espresso at the most. Trista’s Coffee to Go may not be as portable as its smaller counterparts, but it can definitely deliver the goods. The rechargeable espresso maker can make up to 16 cups of espresso and is compact enough to fit into luggage, making it ideal for picnics and camping trips.
Ariete Café Retro
Espresso and style are the two things that the Italians know how to do right. And espresso makers don’t come any more stylish than Ariete’s Café Retro. With old-school flick switches, indicator lights and a 15-bar pump gauge, the espresso maker looks like it would be more at home on a classic Vespa than in your kitchen. The best part is that the machine isn’t just about looks and retro styling; it is quite versatile as well. It allows you to make espresso from ground coffee or pods and the resultant brew is quite good; usually an area that is a drawback for other stylish espresso makers. Whoever said that an espresso maker cannot be a work of art?
Invest in these 4 scintillating gadgets and you will find yourself to be one very happy espresso aficionado.
Attached Images: License: Creative Commons image source
Ross Tyler is a coffe shop owner. He is one the few suppliers of single origin coffee beans and is extremely proud of the fact. Needless to say, he is a coffee lover to the core and so has mentioned some espresso gadgets in today’s post which fellow aficionado’s would love to have.
The Smartphone is turning to be really smart. And why not, for it boasts of a computing power more than the Apollo 11. It is your mail office, playmate, buddy, movie camera and what not. With the frequency of its increasing virtues rivaling Cleopatra’s lovers, it has added one more feather to its crown. It is well on the way to become your new doctor.
Yes, you heard it right. The apotheosis of your Windows phone into Asclepius has begun. The latest app making the world go gaga is not the latest version of Angry Birds; it is the StethoCloud, which transforms your Smartphone into a digital stethoscope. Skeptics and technophobes be wary; this latest technology is a glimmer of hope for third world countries with out of the roof medical budgets.
Pneumonia does not ring any exercising bells, does it? A common disease, people presume, in the era of cutting age medical advancement. What if, one was to tell you that it kills more people every year than HIV? It’s the biggest baby killer in the world with a death toll of 1.5 million children every year, majority of it from the third world countries. The cause is the lack of appropriate medical facilities and database. The medics diagnose pneumonia by checking for the anomalies in the breathing rate. This age old practice is not adequate for the whole diagnosis, and a lot of countries are not in position to equip the whole populace with better services.
So let’s make the humble Stethoscope a little bit smarter:
Well, it turns out its not smart enough to detect the baby killer pneumonia. So, four students from university of Melbourne combined Cloud Computing, a digital stethoscope and the omnipresent Smartphone, to initiate the beginning of a revolution.
StethoCloud works like any other application: it collects data through the source by the specially designed microphones, processes these data with algorithms, and interprets the data with comparison to the pre-existing database to arrive at a conclusion.
The footprint of the giant slayer:
- Yes, the far reaching impact of the latest ‘Ulysses’ is already evident from the palpability of emotions behind its hearty reception.
- It was the winner of Microsoft Imagine Cup Australia Finals.
- It has been adopted by the royal children’s hospital in Melbourne and is being tested in the hospitals around the world.
- Already there are talks of making a large database on heart rate and breathing sounds, probably the largest till now.
- The application is already available on Windows, Android and j2me compatible phones and a version is being developed for iOS as well.
- With 5 billion Smart phones in the offering, it has a fairly large footprint as compared to the doctor patient ratio of 5000 to 1 around the world.
If the stethoscope has turned smarter, others may not be far behind. Survival of the smartest may well become the new adage. The Microsoft Imagine cup introduced us to the StethoCloud and opened a whole Pandora’s Box of possibilities of a medical revolution. Cheap, elementary and innovative, can it spark the beginning of a new era?
Today’s post is contributed by Zack Skye. He is a tech savvy person who enjoys writing about the same. He says some of the best tech gadgets belong to Mouser brand.
Welcome to my (first ever) live feed from this weekends events over at the NEC in Birmingham. I’ll be posting pictures and comments from this years Gadget Show Live 2013!
One of the powerful features of OS X built in spotlight is it’s ability to search the contents of files for your search string.. However, for reasons yet unknown, I have found this functionality to sometimes be a little hit and miss..
Which is where Terminal comes in.. Using a single line terminal command OS X will rapidly return all the files containing the text you are looking for.
First of all, for this example you need to first set your current path in terminal to the folder containing the files you want to query.
Then type/copy & paste the following
grep -l "Search String" File.Extentions
So for example, should you want to find all the text files containing the word AppleScript, you would use the following command:
grep -l AppleScript *.txt
To expand of the example above, should you want to extend that and search subfolders all you need to do is add ‘r’ for recursive:
grep -lr AppleScript *.txt
This will now return all text files in the folder and subfolder containing the term AppleScript.
Microsoft Lync is Microsoft’s latest offering of a unified communications system. Sporting features you’d expect to find in a SIP/Unified Comms client, Lync is a pretty powerful piece of kit.
What’s more, Microsoft offer an SDK to enable easy development of tools and add-ons using Lync technologies. Most of the tutorials and blog posts seem to focus on either C# or Silverlight, which is fine – however, as I am primarily a VB.Net developer I decided to publish my own guide on how to intercept and respond to received Lync messages.
Firstly, I need to point out that I have only had access to Lync for a couple of months now and only downloaded the SDK earlier this month.. So although the code below is functional, I am constantly learning and may find a better way of doing things as my learning continues. To make things easier, make sure you subscribe to the post and you’ll get an update each time I adjust the code.
You will need to download and install the Microsoft Lync SDK then fire up your copy of Visual Studio, create a new windows form project. Obviously you could use any type of project here, however I have plans for a GUI in the future so I am using a windows form project.
Now, open the code view of your new form and import the following:
Imports Microsoft.Lync.Model Imports Microsoft.Lync.Model.Conversation
Now, under your “Public Class Form1″ but before your “Private Sub Form1_Load()” enter the following lines of code:
Public WithEvents _Client As LyncClient Public WithEvents _ConversationMgr As Microsoft.Lync.Model.Conversation.ConversationManager Private WithEvents _LocalIMModality As InstantMessageModality Public _LycConversation As Microsoft.Lync.Model.Conversation.Conversation
That’s all there is to it for the declarations, as you can see I have used ‘WithEvents’ to expose the ‘methods’ in the GUI and make things a little easier developing with them.
Next in the “Form_Load()” event, paste in the following code:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try _Client = LyncClient.GetClient() _ConversationMgr = _Client.ConversationManager Select Case _Client.State Case ClientState.Uninitialized _Client.BeginInitialize(AddressOf InitializeCallback, Nothing) Case ClientState.SignedIn Case ClientState.SignedOut _Client.EndSignIn(_Client.BeginSignIn(Nothing, Nothing, Nothing, Nothing, Nothing)) End Select Catch ex As AlreadyInitializedException MessageBox.Show("Another process has initialized Lync") Catch ex As Exception End Try End Sub Private Sub InitializeCallback(ByVal ar As IAsyncResult) _Client.EndInitialize(ar) _InitializeFlag = True _Client.EndSignIn(_Client.BeginSignIn(Nothing, Nothing, Nothing, Nothing, Nothing)) End Sub
This essentially ties your code to the Lync client running on your machine, then using ‘automation’ it confirms the client is signed in, if not it signs in for you.
Now, your app is hooked into the Lync client, you will need to ‘capture’ the message received event and handle it appropriately.
Private Sub _ConversationMgr_ConversationAdded(ByVal sender As Object, ByVal e As Microsoft.Lync.Model.Conversation.ConversationManagerEventArgs) Handles _ConversationMgr.ConversationAdded _LocalIMModality = TryCast(e.conversation.Participants(1).Modalities(ModalityTypes.InstantMessage), InstantMessageModality) End Sub Private Sub _LocalIMModality_InstantMessageReceived(ByVal sender As Object, ByVal e As Microsoft.Lync.Model.Conversation.MessageSentEventArgs) Handles _LocalIMModality.InstantMessageReceived Dim strRec As String strRec = e.Text.Replace(vbCr, "").Replace(vbLf, "").Replace("'", "''") End Sub
As you can see from the post above, I am using the built in replace functionality of the string. This is because the Lync client passes line feeds after its message, which makes handling the received message quite complicated.
So, from the code above – each time an instant message is received by your Lync client the variable strRec will contain the received message.
Now, upon receipt of a message you may want to send a response – which is where my next code snippet comes in. The following Sub send’s an instant message to the participants of the conversation:
Public Sub SendIM(ByVal strMessage As String) Dim modal = DirectCast(LycConversation.Modalities(Lyc.ModalityTypes.InstantMessage), InstantMessageModality) modal.BeginSendMessage(strMessage, AddressOf SendMessageCallback, Nothing) End Sub Private Sub SendMessageCallback(ByVal r As IAsyncResult) End Sub
From the code above, you should see the sub requires a string to be passed to it. This is what will be relayed to the client who sent the original message.
So there you have it, a fairly simple way of receiving and sending back a Lync ‘IM’.
Obviously, you may want to improve this slightly by trimming the received message and handling it depending on the users request. So, for example – you may want to ‘serve’ a simple weather forecast based on the users request. To do this all you need to do is enhance the ‘_LocalIMModality_InstantMessageReceived’ sub to include code something like this:
If InStr(strRec.ToUpper, "Weather", CompareMethod.Text) Then GetWeatherReport(Mid(strRec.ToUpper, 9).ToString) Exit Sub End If
Now, create another sub which makes use of Yahoo’s weather forecasting, to reply to the Lync user with details of the local forecast:
Sub GetWeatherReport(ByVal locationId As String) On Error GoTo ErrHand 1: Dim YahooCode As Integer 2: Select Case locationId Case "ABERDEEN" 3: YahooCode = 10243 4: Case "LINLITHGOW" 5: YahooCode = 26318 6: Case "GLASGOW" 7: YahooCode = 21125 8: Case "IRVINE" 9: YahooCode = 24544 10: Case "BELLSHILL" 11: YahooCode = 12318 12: Case "CARLISLE" 13: YahooCode = 15178 14: Case "BLAYDON" 15: YahooCode = 13018 16: Case "HULL" 17: YahooCode = 25211 18: Case Else 19: SendIM("Im not able to find the weather for the town you specified (" & locationId & ")") 20: Exit Sub 21: End Select 22: Dim doc As New XPathDocument("http://weather.yahooapis.com/forecastrss?w=" & YahooCode & "&u=c") 23: Dim nav As XPathNavigator = doc.CreateNavigator() 24: Dim ns As New XmlNamespaceManager(nav.NameTable) 25: ns.AddNamespace("yweather", "http://xml.weather.yahoo.com/ns/rss/1.0") 26: Dim nodes As XPathNodeIterator = nav.[Select]("/rss/channel/item/yweather:condition", ns) 27: While (nodes.MoveNext()) 28: Dim node As XPathNavigator = nodes.Current 29: SendIM("The weather forecast for " & locationId & " is: " & node.GetAttribute("text", ns.DefaultNamespace).ToString() & ", with a temperature of " & node.GetAttribute("temp", ns.DefaultNamespace).ToString() & "°C") 30: End While Exit Sub ErrHand: SendIM("I can't seem to fetch the weather forecast right now " & Err.Description & " - " & Err.Number & " - " & Erl()) End Sub
As you can see from the code above, I have also built in the functionality for the Lync user to request weather for a couple of locations around the UK. This could be increased to as many as you want, or removed to only send details of one particular place.
Some other things you might want to consider would be for your ‘Bot’ to query a SQL table and pass back the results, or perhaps perform other functionality such as PING a device and send the reply details in an IM.
In a future blog post I will show you how to connect your new ‘BOT’ into a AI handler to provide an AI Bot capable of holding a ‘conversation’ of sorts.
As per my opening paragraph, I am very much in the early days of my Lync development – so if you have any suggestions on how I could improve the code above, please get in touch.