ISO 8583

Why does ISO-8583 Score Over Other Standards

Of course, it is one of the many financial transaction standards describing how to pack certain data fields such that it could reliably be unpacked as well. However, the distinguishing factors that the standard possesses are :

  • It uses web sockets for communication which is very efficient.
  • This standard helps the electronic system which reads the card number, the transaction amount and other relevant data fields to pack it all up so that it could be transmitted electronically to a transaction processing system where it could then be unpacked back into individual data components and then processed.
……………………………………………………………………………………………………

Where do the Others Lack?

There exist numerous methods for packing and unpacking data. It could be as simple as comma separated fields. Eg: I could choose to send the transaction information as simple comma separated values as:

“1234123412341234,1000, INR,987” (Card Number, Amount, Currency, Merchant ID).

The issue with such a simplistic model of data packing is that it lacks meta information i.e. the message itself does not contain any information on what exactly is being packed in it. Not that it could not have been overcome even with a comma-separated version- just that it could get cumbersome

……………………………………………………………………………………………………

Principles that drive this Standard

The ISO 8583 message is based on the principles that:

– In a transaction message, you only get to pick the number of fields from a predefined set of fields. So, if you need a field called ‘My girlfriend’s phone number’, sorry, ain’t possible.

– The meta information of which fields are present in the message is also a part of the message payload in a data structure called the ‘bitmap’.

Structure

– Most implementations contain a few bytes dedicated to a fixed header (eg: ^A^TISO016000010) after which the actual ISO 8583 message starts.

– In one of our projects, the header we used was of 14 bytes

MTI – The Message Type Indicator.

The first 4 bytes describe the message type.

Eg: 02 00, which tells that the message is actually a financial transaction request. (The response to this request would also be in ISO 8583 and would carry an MTI: 02 10). Various MTIs exist and can be found on the web.

Bitmap

It is almost a visual representation of which fields are actually present in this message and which fields are not.

Eg: F2 38 80 01 08 E0 80 0F

11110010 00111000 10000000 00000001 00001000 11100000 10000000 00001111
(all the bit positions that are 1 implies the corresponding fields are present)

Hex Binary (Positions that have 1)
F2= 11110010 -> (1,2,3,4,7)
38= 00111000 -> (11,12,13)
80= 10000000 -> (17)
01= 00000001 -> (32)
08= 00001000 -> (37)
E0= 11100000 -> (41,42,43)
80= 10000000 -> (49)
0F= 00001111 -> (61,62,63,64)

We’ve just read the map! Therefore the fields that will be present in this message are field numbers: (1,2,3,4,7,11,12,13,17,32,37,41,42,43,49,61,62,63,64)

Note the first bit. Field 1 is a special field which indicates the presence of an extended bitmap. Since this sample message contains 1 on the 1st position, it means that this message contains another bitmap with another 64 bits.

Extended bitmap, Binary 64 bits

80 00 00 00 00 00 00 00
(=hex .extended bitmap field)
(80)10000000 -> (position 64+1=65)
This extended bitmap shows that field number 65 is also present in this message.

Data Elements

Immediately after the bitmap, the data elements start serially. From the bitmap, we know that fields 2,3,4,7 are present one after the other. All that we need to do is to read them one by one. Each field number has a predefined type in the ISO 8583 definition and has a predefined length. Some fields have a variable length in which case the first N bytes provide the length of the field.

Example:

Data Element 2. Length 16. Value : 0000011319353459 = Primary account number
Data Element 3. Length 6. Value : 011000 =Processing code. 011000 = cash withdrawal
Data Element 4. Length 12. Value : 000000020000 =Amount 200.00
Data Element 7. Length 10. Value : 0804030013 =DateTime DDMMhhmmss
Data Element 11. Length 6. Value : 051028 =Systems Trace number
Data Element 12. Length 6. Value : 083013 =Time, hhmmss
Data Element 13. Length 4. Value : 0804 =Date, MMDD
Data Element 17. Length 4. Value : 0804 =CaptureDate, MMDD
Data Element 32. Length 6. Value : 123456 =Acquiring institution ID code 123456
Data Element 37. Length 12. Value : 192165102801 =Retrieval Ref. No.

……………………………………………………………………………………………………

Isn’t ISO 20022 the new standard?

ISO 8583 will be a difficult one to get rid of anytime soon and hence one way or the other, in the financial industry ISO-8583 is here to stay.

……………………………………………………………………………………………………

The views and opinions expressed in this article are those of the author.
To know more about our company, please click on Mindfire Solutions. 

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Google Puppeteer

Puppeteer : Is it time to ditch Selenium?

Google has introduced a new library based on Chromium’s dev tool protocol. The library grants high-level API to interact with chromium and handle most tasks which you can perform using Chromium dev tools. The library is implemented in node.js and is really easy to get started once you install required packages using the node package manager.

……………………………………………………………………………………………………

Why Puppeteer?

Puppeteer flexes its muscle where selenium misses out. It is not just limited to interactions with the web application under test performing tasks like for e.g. interacting with dom, submitting forms, generating screenshots and pdf of web pages but also in intercepting network activity, throttling CPU and network, generating timeline trace and mocking API amongst some. The puppeteer can be easily be used to write end-to-end automation test suites with the benefit of getting a detailed timeline of the performance of all the assets (images, javascript files and so on).

Engineers can easily switch between headless and non-headless modes. While writing the automation suite, non-headless mode gives a good view of how the browser is interacting with the application under test and helps in debugging; just like in Selenium. But in production, we can execute suite in a headless mode as it reduces execution time and save resources.

……………………………………………………………………………………………………

Is it really that Good?

Yes, it enjoys the goodness of async code execution. You can always perform multiple tasks simultaneously following the latest javascript async await conventions. You can test the behavior of your application under different screen sizes. The network can be throttled on demand to find out how your application will run at low internet speeds. For e.g. if you want to test the error messages in an application when a user loses internet connectivity, puppeteer can easily handle such a scenario. Mocking APIs can also be achieved with utmost ease. For instance, if you want to test your “payment completed” screen but don’t want to go through the payment gateway flow, you can easily perform it with puppeteer by mocking the API response. With a detailed performance matrix, puppeteer can easily be used for performance testing.

So what are the drawbacks?

Google puppeteer supports only Chromium and Chrome out of the box. Third party implementations are available for Firefox and Internet Explorer. But they are experimental as of now and are missing a good chunk of the firepower. The documentation available is minimal as compared to selenium.

Why should you prefer Puppeteer over Selenium?

The targeted audience is the major deciding factor. If it majorly comprises of Chrome users you should go ahead with Puppeteer. Other factors include performing automation tasks which are not possible with selenium, like testing Chrome extensions, mocking API calls and so on. Selenium follows WebDriver protocol and has been from a very long time in the market compared to puppeteer hence itis better documented compared to puppeteer.

……………………………………………………………………………………………………

Conclusion

Puppeteer is a powerful library which has revolutionized the automation testing by overcoming functionalities missing in WebDriver protocol used by Selenium. Although it is still in the early stages, it promises a bright future, backed up as it is by the illustrious Chrome dev tools team.

……………………………………………………………………………………………………

If you have any queries in this field, talk to Mindfire Solutions. For over 19+ years now, we have been the preferred Software Development Partner of over 1000+ Small and Medium-sized enterprises across the globe.

Spread the love
  • 1
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
    1
    Share
Overcoming pain points in offshoring software development

Overcoming the Critical Offshoring Pain Points in Software Development

It is imperative for businesses today to leverage the effectiveness of software in order to get ahead in the market. This is not limited to the enterprise software pieces they use as part of their day to day operations, but it also relates to the proprietary pieces they offer to their users, clients, and partners.

But developing proprietary software is a serious undertaking, and one which might be beyond the reach of the average small or medium-sized business – in terms of cost effectiveness and also the general skill and expertise needed to truly deliver. So what is the answer for SMEs in the market?

Offshoring software development represents a viable solution. This concept in software design refers to hiring a third party team in a different country to handle the development process. This approach to development brings with it immense benefits, as well as significant challenges. So what are the key pain points, and how can businesses navigate through them. Let us look at the critical ones :

……………………………………………………………………………………………………

Difficulties Commonly Associated with Offshoring Software Development?

Breakdown in communication between teams

Offshoring means a team operating in a different country or territory – which in turn means potential time zone clashes and a heavy reliance on digital communication tools. There is also the very critical factor of cultural differences existing between the in-house and outsourced teams, leading to communication breakdowns.

Quality not guaranteed

This is a familiar source of anxiety for any businesses working with an outsourced team – How to ascertain the quality of the outcome? There is no guarantee here, but, if the services of a company are hired purely on the basis of low rates, there is a strong likelihood of low quality turning out to be the byproduct. No good service comes cheap.

Sensitive data risk

We are in the beginning of the digital era. Data has already started making the business world go round. This makes outsourcing something of a minefield. On one hand, the team needs the requisite data to do the job and to do it well, while on the other, the companies outsourcing are always going to be nervous about how much access to sensitive data would they be giving away. The risk of data breach, either accidental or malicious, is always high and the ensuing penalty could be significantly detrimental.

……………………………………………………………………………………………………

Overcoming the Pain Points

Deployment of digital communication tools

Outsourced teams – both on and offshore – are introducing businesses to a whole new world of flexibility and agility. This is being supported by a wealth of different communication tools which allow collaboration and communication between teams across the globe in real time. With so many high-quality software tools and platforms available, communication breakdowns can be completely eliminated.

Progress reports and regular project appraisals

When a contract is drawn up with an offshore team, regular appraisals and reports have to be included in it to keep a tap on work progress. The result will be a process which is far more streamlined, one unlikely to get hung up or face too many unexpected pitfalls. It enables both the teams to stay on course and make required modifications whenever it is deemed necessary.

Temper cost reduction with a quality-oriented focus

Reducing costs and achieving better resource management are certainly two important and obvious factors for a company when it comes to outsourcing their software development work. What should also be given equal importance is the quality of work. Everything fails otherwise. Clarity is required on two fronts here. Firstly, knowing the impact the quality of the outsourced work will have on the end result. Secondly, having established evaluation criteria to identify the right partner to engage with.

Develop an in-house data security plan, Extend it to outsourced teams

A business should first understand that it is not immune to data breaches from within, and thus, should begin by drafting a high-level data security plan that covers all potential vulnerabilities.With the required processes in place the approach can then be extended to include the offshore partner. Providing them with a copy of one’s data security policy, and ensuring that the same is ratified and agreed upon before the final contract is signed would clearly underline the importance the company puts on the matter.

……………………………………………………………………………………………………

If you have any queries in this field, talk to Mindfire Solutions. For over 19+ years now, we have been the preferred Software Development Partner of over 1000+ Small and Medium-sized enterprises across the globe.

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Material Design Image

MaterialStyle.io : Heard of it?

A year ago, I was involved in a project with the requirement to have Material Design styles and animations for the UI. Like always, we looked for frameworks or libraries that meet our requirement. We came across three of them which were quite popular then.

The first library one was Google’s own – Material Design Lite (https://getmdl.io). It is a super lightweight library that doesn’t rely on any JavaScript frameworks. Unfortunately, it didn’t have important components such as Select Boxes. Eventually, Google has stopped its development for this library. Having found it inadequate, we moved on for the next:

MD Bootstrap (https://mdbootstrap.com/), a newcomer with a different approach to provide Material Design components. It was not an independent library but a wrapper that was to be used along with Bootstrap. We were curious to see if it could meet our requirement. Once again, we were left disappointed because it did not provide Material Design animations with its components. Moreover, we could not use all its components unless we purchased the PRO version of it. We were starting to get annoyed until we stumbled upon the next one:

Materialize (https://materializecss.com/). Developed by a team of students from Carnegie Mellon University, it is a complete framework that doesn’t depend on Bootstrap or jQuery but lacks the animation ability. Thus, we still did not have any luck going our way with finding a suitable Material Design package.

We had had enough and then we decided to use Bootstrap as it is and write our own CSS and JS on top of it to fulfill the project’s requirement. This gave me an idea to create a UI wrapper which would have all the bootstrap components, look and behave in accordance with the Material Design guidelines. I set about the developing it and six months later, with some hard work, research and sleepless nights, MaterialStyle.io was born.

……………………………………………………………………………………………………

So what exactly is MaterialStyle.io?

It is a UI wrapper that lets you add Material Design styles and animation to Bootstrap 4 components. It is very easy to use. You just have to include the CSS and JS, copy the Markup for the desired component from the Website and you are done.

Why should you prefer MaterialStyle.io to other products?

Well, MaterialStyle.io was built with the intent of overcoming the shortcomings of other products. And hence, it follows the latest Material Design guidelines with includes some extra components which are not included in Material Design. Some notable features which make it stand out from others are:

  1. True Material Design style and animation
  2. Select Boxes with search options
  3. Custom shapes for Buttons, Cards, and Divs
  4. 256 Color classes to choose from
  5. Elevation which lets you define the amount of shadow a component needs to have

There are a few more on the way:

  1. Date picker
  2. Snack bar
  3. Chips
  4. Image gallery
  5. Slider

Now, what on earth is a Material Design?

Material Design (codenamed Quantum Paper) is a design language developed by Google in 2014.

According to Google – “Material Design is a visual language that synthesizes the classic principles of good design with the innovation of technology and science. Material Design is inspired by the physical world and its textures, including how they reflect light and cast shadows. Material surfaces reimagine the mediums of paper and ink.”                                              

Why should I use Material Design?

Needless to say, the design has a strong bearing on forming impressions in the minds of individuals evaluating products or services in a marketplace and does count as a critical factor when it comes to apps. The benefit of using Material Design is that Google has done the UI and UX research for years, thus saving individual developers from expending more effort. What makes it really interesting is the deliberate guideline on interface motion. It not only gives an opportunity to make a brand/product to stand out but also delivers remarkably in user experience.

How is it different from Bootstrap?

Bootstrap is a UI framework for constructing responsive UI using a set of HTML classes and pre-wired CSS styles and behaviors. It doesn’t focus on the look and feel of a webpage. On the other hand, Material design is a design guideline to build frameworks and not a framework by itself. It focuses on how web components should look, behave and interact visually. It starts with general principles around visual elements (physics, light, space, momentum) and expands on those to provide concrete examples and requirements for specific elements (buttons, cards, snack bar, etc.).

So, if you want your app to be visually appealing and interactive, use either Material Design or go for Bootstrap with a bare minimum architecture.

Here is a visual comparison of what you get using Bootstrap VS Material Style

 

Material style vs Bootstrap

……………………………………………………………………………………………………

The views and opinions expressed in this article are those of the author.
To know more about our company, please click on Mindfire Solutions. 

Spread the love
  • 7
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
    7
    Shares
Distributed IT Team

Overcoming the Obstacles of Running Geographically Distributed IT Teams

What it means to operate an IT team has evolved in recent years. Today’s teams are more efficient, flexible, and streamlined than the ones of the past, and much of this is because of a constant desire amongst people in business to enhance their capabilities and to harness the power of the latest technologies. Earlier, it was a given that the key players in a team would have to operate together in one building, or in close proximity. But this way of doing business had its drawbacks, which became evident over the years. There wasn’t room for personal flexibility for one. Also, sticking to this approach had a financial bearing as well.

Over time, technology opened up possibilities to revolutionize the way teams could function, and IT industry was amongst the frontrunners to seize the opportunity. From using video conferencing and Skype to deploying apps like Slack or GoToMeeting/GoToWebinar, teams can leverage technology to have virtual meetings anywhere – which essentially means that the members can work from anywhere too! However, there are challenges of operating a geographically dispersed team. Let’s examine what they are, the impact, and how seasoned business leaders overcome them and manage to get the most out of their teams.

……………………………………………………………………………………………………

Perceived power imbalance

According to an article in HBR if more team members are consolidated in one location or they are in the locations that are geographically close to that of the team leader, then there’s a perception that these people have more power or access to power. This can lead to a feeling of isolation for the other team members or for that matter a feeling of complacency amongst the ones closer. Either way, it negatively affects the overall team morale. Since it is not possible to change the geographic locations of members, team leaders can implement creative strategies to diffuse false perceptions. For e.g., a team leader may need to give particular “power” assignments to those who are farther away from the headquarters or who are working in smaller groups.

Cultural insensitivity

Global teams will naturally contain people from diverse cultural backgrounds. Most people will not know everything there is to know about every other team member’s culture. This can lead to some awkward situations, to say the least. It could even lead to some people responding in culturally insensitive ways. One of the ways to nip in the bud is to raise the topic up in common meetings and suggesting that more often than not these problems are due to errors of judgment, ignorance and not malice. That they can be addressed by increasing one’s awareness of other’s cultures.

Language barriers

Usually, the prominent language in IT global teams is English. However, this is unlikely to be the native tongue for many of the team members. Those whose native language is English are likely to have an advantage in meetings with their peers. The less fluent speakers may feel shy about speaking up even if their ideas are good. Leaders can help overcome this impediment by setting forth guiding principles for discussions. An e.g. could be to suggest that the more fluent speakers slow down their speech and refrain from using difficult phrases. In addition, they might limit the amount of time they are given to talk and urge the less fluent speakers to speak more.

Lack of proper technology

The technology for high-level collaboration and remote communication is out there in the market. It is just that many businesses do not use them correctly. For any organization, there has to be some research done to correctly identify the optimal technological solutions they need to operate efficiently. There are multiple products options available in the market for each type of functions that facilitate collaboration for geographically dispersed teams. Getting the right ones is the key and can make the difference between building synergy and causing disruption.

Lack of good leadership

Diversified teams must have exemplary leadership at the helm. Without it, the teams will quickly fall apart. Besides having the required technical expertise the person in charge of leading such teams must have a global mindset, possess high emotional intelligence, and know the art of mending fissures when they appear.

……………………………………………………………………………………………………

Conclusion

In a connected world, as businesses look to the future, geographically dispersed IT teams is a reality that has to be dealt with. For companies with a global outlook, not only is this approach a practical step forward but also one which can be harnessed to their advantage. The key is to recognize that the obstacles that exist are perpetual in nature and have to be dealt with on an ongoing basis.

……………………………………………………………………………………………………

If you have any queries in this field, talk to Mindfire Solutions. For over 19+ years now, we have been the preferred Software Development Partner of over 1000+ Small and Medium-sized enterprises across the globe.

 

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Confused Face

Musings : Relevance of Asking Questions & Sharing Ideas

Few incidents in the recent past brought back memories of my days in school. Although the narration is a personal one, I am sure many readers would identify themselves
or their friends with it. I was, as a matter of fact, quite a naughty kid and reasonable in studies :).

I would, in particular, be quite terrified on the days we had a question-and-answer session with the teachers. I would put in my best efforts by finding a seat in advance and do my best in concealing myself behind a friend with a more generous built. It would thus reduce the chances of my getting noticed and being at the receiving end of questions.

I would do the same thing if I had doubts on certain topics or sections in a passage..I was always shy and afraid of asking questions. I would be concerned about what my teachers, my classmates, and my friends would think if I asked a worthless one. I stuck to this habit through my days at high school, thus risking to perpetuate my stupidity.

However, as years went by, I felt my outlook beginning to change, not sure how and why; could well be due to the maturity and experience that age brings along, generally so to say.

 ……………………………………………………………………………………………………

The turning point was in a class on Data Structures, taken by one of the better-known professors in our institute. He was explaining Binary Trees that day. Having explained, he said in an emphatic voice “Am I Clear?

And guess what, the school kid who was always shy to ask questions in early days.. stood up and said. “I didn’t get it”… The lecturer asked

” Is there anybody else?”. And to my surprise, the most intelligent person in our batch stood up as well!

So the professor went ahead and explained the concepts again. I did not hold back this time either and got up and said, “I still didn’t get it, sir”. I could not help it. The act seemed out of nature to me, but I was finding a strange degree of comfort doing it. On the third instance though, the professor remarked, “If you understood it’s good, and if not then it’s “excellent” ;).” Perhaps he got irritated.

Later in the day, the professor called me to his cabin and explained the concept again. To my surprise, he claimed that he was on purpose not explaining things the way he should have in order to check how attentive we were in the class. And that he was not surprised that I failed to understand him every time; indicating that I was the one paying attention.

The incident was a special one for me.  I had managed to overcome my fears and also realized the importance of asking questions. The fact that one should not hesitate to ask. If done with the right intention, one need not get bogged down thinking whether the question will be looked upon as silly or irrelevant. Questions can in fact sometimes lead to throwing up of bright ideas, which might bring about significant happenings, including recognition to the seeker.

 ……………………………………………………………………………………………………

In my professional career so far, I have seen many instances where people hold themselves back from asking questions, only to repent later. Or for that matter hesitate to share their thoughts/ideas. The fear of embarrassment of being judged unfavorably by peers or seniors tends to act as a deterrent. But what they don’t realize is that by not asking questions and letting their doubts persist, they rely on assumptions to act. And in the event of these assumptions going wrong, they set themselves up for disaster. Besides, they also lose out on opportunities to address matters better. Smart questions can lead to better solutions and recognition. Sitting back and allowing questions to die in one’s mind or waiting for others every time to ask is asking too less of oneself.

To all of those who are shy, hesitant or worried about what others may think of their questions, I hope my learnings help you get over your inhibitions. If you happen to work in the field of technology, you are at an advantage already. For the frantic pace of change almost entitles you to ask/share. So every time you feel an itch,approach your peers first, reach out to others in your organization, and if you sense a need to go beyond, connect to the world at large. We have enough tools and channels at our disposal today to facilitate that. Be fearless and ask as many questions as you can think off or share your thoughts/ideas. Just remember if you will not ask/share, then someone else will and you will be left wondering later ” Oh Shoot!  I thought of the same as well“.

 ……………………………………………………………………………………………………

The views and opinions expressed in this article are those of the author. To know more about our company, please click on Mindfire Solutions. 

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Software Development Partner for SMEs

The Importance of a Software Development Partner for SMEs?

Small and medium enterprises that been highly successful are found to have at least two things in common – relentless focus on the fundamentals of their businesses and the uncanny knack of identifying and riding on a market/technological wave. There is also another common thread that connects them all, one witnessing an exponentially rise in its relevance– ‘Information Technology’ as an enabler. Not surprisingly, the one question that gets discussed in any SME nowadays is: “How do we meet our software development needs?”

Developing software in-house is definitely an option. But it can only be pursued by trading off against investing the resources in the core business activities. The alternative course lies in outsourcing all the work to a partner who has the required expertise. Software development is a specialized field. It requires focused and continuous effort to build capabilities to deliver, and upgrade to avoid the risk of oblivion. Thus, a reliable software development partner is priceless. Here’s why

……………………………………………………………………………………………………

Quality vis-a-vis Tenure?

The length of time a software partner has been in operation indicates how well it can adapt to the shifting demands of the industry and its clientele. A longish tenure essentially means that their investment in software engineering processes and related measures are robust and that the company can ascertain the benefits of expertise and flexibility in their engagement. Their deliverables, thus, are expected to be of a certain distinct level.

Technical Knowledge

It being its core area of work, a capable partner can provide quick access to technical skillsets with both depth and breadth of expertise. Building such capabilities in-house requires a continuous expenditure of time and money. The same if accessed through a partner relives an SME of a lot of headache. Infact, the services of multiple outsourcing providers can also be availed if the needs are varied, thus enabling the SMEs to be nimble-footed in responding to market opportunities.

Expense

The overall cost of establishing and maintaining a software team is quite high. It involves cost attached to hardware, software and most importantly acquiring and retaining relevant talent. Outsourcing offers the privilege of flexibility, for ramping up and down of resources, and of getting access to the exact type of technological expertise to handle exact needs and fluctuations in work generation.

Domain Knowledge

Seasoned developers with a track history of successful project execution in a certain domain can recommend the best of the industry practices while offering solutions. Domain knowledge translates to better and faster identifications of gaps, precision in technological solutions and identifying opportunities for improvisation.

Crisis Management

The true test of the character of a software partner arises during instances of crises. Software companies, which have served multiple clients over many years, end up facing multiple types & instances of crises during the tenure. The experience equips them to respond to such situations better in the future. The more diverse the experience of the partner the better the response expected.

……………………………………………………………………………………………………

If the benefits of outsourcing to a partner seem businesswise prudent, then caution needs to be exercised in its execution. Just identifying a player is not good enough for the purpose. One runs the risk of being limited by the capabilities of the services provider in the long run. It needs to be ascertained that the partner is doing enough to keep pace with the rapids changes in the field of Information Technology. Besides that, exploring various models of engagement is also an important aspect of any partnership.

How much an SME truly gains out a partnership with a software development company is directly proportional to these factors mentioned above.

……………………………………………………………………………………………………

If you have any queries in this field, talk to Mindfire Solutions. For over 19+ years now, we have been the preferred Software Development Partner of over 1000+ Small and Medium-sized enterprises across the globe.

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Blazor

Blazor : Will it slay the JavaScript/SPA Frameworks?

It has been a long time since Microsoft allowed support of .NET directly on client-side. The last attempt was with Silverlight which got famous when it launched but due to lack of support from browsers and security concerns it stopped; like what happened to Adobe Flash.

……………………………………………………………………………………………………

What is BLAZOR?

Blazor is an attempt to bring .NET core to the browser directly which allows supported language like C# to run directly on the browser. Blazor allows developing Single Page Application (SPA) very quickly and by using a single language on both server and client.

Blazor allows having features similar to any other SPA framework like Routing, Template, Binding – one or two way, Rendering, etc.

The name comes by combining Browser and  MVC Razor i.e Blazor.

How does it work?

It entirely relies on WebAssembly (Wasm). Wasm was developed in 2015, to run high-level language directly on browsers. It is supported by W3C which means it is standard and could be utilized by different platform too. There are runtimes available to run C++ codes on browsers too. Since it is from W3C all latest browsers generally have the support of Wasm.

Blazor runs via Wasm but in-between there needs to be a runtime. Mono Wasm allows required .NET assemblies downloads on browser directly which runs on Mono Wasm Virtual Machine.

What are all advantages of Blazor?

  • A single roof of programming language to build client and server-side codes.
  • Wasm is generally faster than JavaScript (JS) because those are binary/compiled code. No need for parsing of scripts.
  • A typed system, a fewer scope of errors due to same. Razor, model binding, etc.
  • All sweet features of C# and .NET core: Dependency Injection (DI), delegates/events, etc.
  • Visual Studio Integrated Development Environment (IDE) to allow a rich experience to develop applications quickly with many provided inbuilt or plug-in supported features.
  • A fallback approach to enable Blazor to run if Wasm is not available to any browser.
    No issue of Garbage collection like all .NET platform, Mono Wasm supports it too.

Limitations of Blazor

  • Still is in the development phase, not recommended for production use.
  • Limited debugging support of Blazor codes since it runs on Wasm.
  • No way to access DOM elements has to rely on JavaScript for same.
  • The second biggest, there is not much components/control available in Blazor to have richer User Experience (UX). Like as simple as AutoSuggestion, we have to rely on JavaScript plugin for same.

Demo of Blazor

https://www.youtube.com/watch?v=IGj49kaYPEc
The source code used in demo: https://github.com/viku85/BlazorDemo

Conclusion and Future

Blazor is easy to use with minimal effort in comparison to any JS SPA framework available in the market. Since it is on .NET, there is less learning curve for people coming from the .NET environment.

A lot of changes and development is going on with Blazor, many refinements, performance improvements, feature add-ons but still not having a final version to use on production.
I believe with the support of controls like Kendo or inbuilt controls in Blazor, application development would be much quicker and feature rich.

We need to wait for the final release (if it happens) and a wide variety of supported controls which may kill JS Frameworks at least in the Microsoft development environment.

……………………………………………………………………………………………………

The views and opinions expressed in this article are those of the author. An avid techie, Vikash enjoys sharing his thoughts on computing and technology in his personal blog.
To know more about our company, please click on Mindfire Solutions. 

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Musings : The Conundrum of Solving Problems

“It’s elementary, my dear Watson! Or, is it (anymore)?”, Sherlock Homes

I haven’t read much of Sherlock Holmes. Of course, I’d like to. Though, I have seen the latest movies where Robert Downey Jr. has done a marvelous job. The fan inside me certainly woke up and took notice of certain mannerisms attributed to the Holmes’ character.

Coming straight to the point now, to the headline/phrase, which is why I am writing this. This phrase has proved itself numerous times (i.e., QED-ed) in several different contexts I have found myself observing, mostly during problem-solving analyses. I am sure this has been the case with most of you reading this – How often do people lose hold of elementary stuff! –  At work or in personal life, making decisions on worthless or utmost important objective question-marks or complex/subjective problems they face. Just look around and see what’s happened in only the last 3 months in your own work-life/personal-life setting (Not in/about your own life; Of others you are connected with – it is just a bit easier then.). You’ll perhaps need a counter. I know I would. ( PS: Don’t get into politics, otherwise “To infinity and beyond!”. There’s no need to count.)

How often do you feel that people don’t sit down or stop for a moment to actually think about a problem, its root-causes (fish-bone anyone?), or just the priority/severity (action-priority matrix, anyone?). If you just make a wild guess why they do not have time to think (time-management, anyone?), you might just be surprised. “They just don’t!” will also feature in the top root-causes, for sure, at least in today’s age. That’s the most frightening/eye-opening one.

What is/are, actually, the real problem(s) then?  Is it too much work? Too much stress? Too many distractions? Too many threads? Too much pseudo-social life (Yes, here you can add FB, WA etc.)? Too much of day-to-day randomly going about the wild-goose chases, i.e. everything is important, everyone is important, everything takes (the same) priority, everything is work, every possibility has to be explored etc., everything has to be perfect, everyone’s impression about my work/life (yes, here you can add “my image”) is important?

PS: Of course, “Couldn’t care less!” (the don’t-care bit is set) doesn’t count for anything.

Probably, someone else, up there, is one of the root-causes then!

What do you think? Your comments are welcome.

 

 ……………………………………………………………………………………………………

The views and opinions expressed in this article are those of the author. To know more about our company, please click on Mindfire Solutions. 

 

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Online Marketplace for Tutors

Mike was famous for his out-of-the-box career choices, something that earned him the tag of a rebel among his friends. So, it was not a surprise when, in spite to scoring the highest in subjects like economics and algebra, he choose to drop out, and pursue music as a career. His parents were as much disappointed as they were concerned about his future.

……………………………………………………………………………………………………

The Travails

Having set out to carve a career in the field of his choice, Mike quickly realized that making a living out of his passion would not be an easy job. He could bag a few gigs and call-shows to begin with using his contacts, but that was surely not enough to sustain a reasonable lifestyle. To add up to his net income, he started offering music lessons, mainly vocal and classical guitar classes to teenagers. That too did not assure a steady inflow of cash. Firstly, because the number of students turned out to be only a few. And secondly, because teenagers were fickle minded, they would pick up the guitar one day and get bored with it right after a week and drop out. Mike started wondering how far could he carry on like this.

One day, his best friend from school, Paula dropped in for a surprise visit. At that time, Mike was giving guitar lessons to his students, a group of three boys. They were just about to leave when Paula rung the bell.

Hey, what’s up”? Paula’s enthusiasm was met with a feeble smile on Mike’s face. “Hey. Wow! Come in!”

What’s wrong with you?” Paula was anxious, seeing that the signs of struggle were everywhere in his rented place, now more conspicuous than ever.

“Nothing, it’s just been a little tough these days. That’s it” Mike tried but couldn’t hide the tone of despair.

Care to explain?” Paula tried to be of help.

“Actually, I’m getting tired of this now. My students, all three of them, are going to withdraw by this month-end. In every two months, I’m giving lessons to a completely new set of people. They ‘re just coming in and going by, frustrating me at its worst”, Mike never sounded this helpless as far as Paula could remember.

Listen”, Paula said “I have good news. There’s a cousin of mine, she wants to take vocal classes, and she has heard about you. But, the only catch is that her place is at Hancock, nearly two hour’s journey from here. Would you be able to take this up?

“I’m afraid I can’t. That will be too much of traveling. I can refer my friends who live near Hancock, they can help her out”.

Wow, you have musician friends there as well?” Paula didn’t expect that.

“Ah, my network is quite large you see. I have my folks everywhere, just like me”, Mike sighed, “struggling and trying to make both ends meet. And for us artists, tuition is one of the few sources of regular income that we have”.

……………………………………………………………………………………………………

The Idea

“Wait a second! Why not take this entire thing up to another level?”, Paula quipped. She was always the ingenious one in their group. “What do you mean?” remarked Mike.

Simple. You have your fellow mates, a network of artists in South California who provide tuitions and do it seriously. I know a lot of people who offer subject-specific classes. Even I would love to give French lessons to young learners. So, what we all need, is students who are serious about learning what they desire to. On the other hand, there are folks like my cousin, and I believe a lot of others too, who need dedicated teachers

“Yeah, so what’ll we do? Organise a meet-and-greet?” Mike quipped.

Yes, but in a way that makes it fruitful for all”, Paula didn’t care for the tinge of sarcasm in his voice, “Not face-to-face, but in cyberspace

“Woah, that escalated quickly! Now, who will take up the tech bits? That’s not my cup of tea, and you’re no better”

Listen, I’m serious. I’ll set up an appointment with a tech solution provider that my brother recently worked with for a venture of his own. They can help us out to get things off the ground

“Hey, are you serious?”

“Very much I am! Wait for my call, once they confirm, I’ll tell you when and where to drop by”

Paula left that day, keeping her promise. After a week, they were at the office of that tech company. They discussed the proposition with the representative, who created the blueprint of an online portal where students could reach out to the best teachers/mentors in areas of academics, language and of course, music. Both the parties could set their priorities straight, with respect to the location, the level of expertise, and the price point. They could also come to mutual terms, regarding the time and place of the classes, in the portal itself.

……………………………………………………………………………………………………

Interested to get a more detailed account of the solution, Download the Case Study;
No Email Ids/Contact Numbers needed.

……………………………………………………………………………………………………

The Solution

“Also, if you ask me, there’s another excellent addition that has a lot of potential,” Emily from the Tech company was keen to help. You could also offer online tutoring, for cases where taking physical classes is not possible. That way, you’re spreading the geographical boundaries of your business ”

In that case, Mike said “We’ll also have to think of something through which we can transfer large audio/video files because the instructor has to send samples, notations etc. The student should also be able to bounce off similar stuff with the teacher.”

“Not an issue, we’ll be in talks with our development team to streamline the portal with fast file uploading system”, Emily assured him, “This will be one of its kind. What have you thought of naming the portal?”

“Yikes! We haven’t thought of any”, Paula admitted.

“Let’s call it an online marketplace for tutors, as for the type. You can name it anything you want, after all, it’s your idea”, Emily smiled.

The idea was executed with flying colors, and today, Mike has stopped spending sleepless nights overpaying his next month’s bills. The portal, has enabled him to have a steady source of income courtesy his pool of geographically dispersed and enthusiastic students who share his passion towards music. Besides, it has also helped him garner a reputation for himself in his field of work.

 ……………………………………………………………………………………………………

Talk to Mindfire Solutions, and we’ll help you push your idea to the real world!

 

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •