Tag Archives: 上海爱上海

Fitbit Charge 3 vs Versa Which is the best fitness tracker

first_img Aug 31 • Best places to sell your used electronics in 2019 Now playing: Watch this: Color touchscreen 9:27 Yes Fitbit Charge 3 vs. Versa Fitbit Charge 3 See It Abt Electronics $159 Yes Yes Yes Yes $169 Battery life Up to 50m CNET may get a commission from retail offers. Monochrome touchscreen See it $199 Sep 1 • iPhone 11, Apple Watch 5 and more: The final rumors Fitbit Fitness Apple Yes No Review • Fitbit Versa review: Giving Apple Watch a run for its money Fitbit Charge 3: See it at AmazonFitbit Versa: See it at AmazonCharge 3 is sleek, but Versa is more like an actual watchThe Charge 3 looks similar to many of Fitbit’s previous trackers. It’s a thin band with a physical button on the side.Both have touchscreens, although the Charge 3 has a monochrome display compared to the Versa’s color LCD. You can swipe across from the sides of the display to access fitness tracking features or settings. To go back, press the side of the Charge 3. The Versa has three physical buttons that let you go back, start or stop activities, and make selections.You can change the watch faces on both in the Fitbit app. But the Charge 3 has fewer watch faces to choose from than the Versa, which has plenty of third-party options.Change the straps with this toggle on the Versa (left) and button on the Charge 3 (right). Angela Lang/CNET I found it hard to see the display on the Charge 3 in direct sunlight, regardless of the brightness setting selected (you can choose between auto or normal brightness). For me, the Versa was easier to see outdoors and you get an extra brightness setting to choose from.To change up the look of your Fitbit, each offers interchangeable straps. The Charge 3 has quick release buttons at the back, while the Versa uses a small metal bar that you have to toggle to change the strap. It’s a lot easier to swap the straps out on the Charge 3 than it is the Versa, especially if you’re looking for a quick change.Each display is coated in Gorilla Glass 3 to protect against scratches and bumps.Winner: Tie, depending on which size you preferFitness tracking features are similar on bothBoth Fitbits have an optical heart rate sensor, sleep tracking, female health tracking and water resistance to 50 meters. Neither has GPS built-in. Instead, they use connected GPS. So if you want to track your route, pace and elevation during an outdoor workout, you’ll need to take your phone with you.img-0172-2Check out your previous workouts from the Fitbit app. You can also tap into each one to see a breakdown of heart rate zones and calories. Tracking a run will also show a breakdown of your average pace. Screenshot by Lexy Savvides/CNET They both have automatic workout detection, and you can set goal-based exercises to get a notification once you pass a set distance, time or calorie goal.The Charge 3 lets you put six different workout shortcuts on the exercise screen, while the Versa gives you space for seven shortcuts. You can choose from 19 workout types from the Fitbit app (run, hike, walk, swim, bike, spinning, pilates, interval workout, golf, elliptical, weights, workout, treadmill, stairclimber, yoga, tennis, kickboxing, circuit training, martial arts, bootcamp). Both give you reminders to move, prompting you to complete a number of steps an hour to “win”.I found the fabric and plastic Fitbit straps fairly comfortable to work out with during a run or sweaty Pilates session.Thanks to its larger screen, the Versa gives you more metrics from your workout once you complete your exercise routine. It’s also the only one that lets you go back and view your past few workouts from the watch face, rather than diving into the Fitbit app itself.The Versa has lots of third-party apps available (which we’ll cover in the next section) which makes it easier if you prefer to track your workout in a different app. During workouts, I found the Charge 3 often gave a higher reading on my heart rate than the Versa. During an outdoor run, it said my maximum heart rate was over 200 beats per minute. From using previous heart rate trackers and smartwatches (and comparing with the Versa), running at the same intensity on the same route never gave me a max heart rate over 190.The Versa comes with the Coach app. A bit like a personal trainer on your wrist, it runs you through a sequence of moves with quick visual cues on the screen. It’s a nice extra if you want to squeeze in a quick workout. For similar workouts on the Charge 3, you’ll need to use the Fitbit Coach app on your phone.Fitbit metrics don’t sync to Apple Health, so keep this in mind if you are an iOS user who likes to consolidate data in one app.Winner: VersaBoth have smartwatch features, but the Versa does moreIt’s easy to get notifications mirrored from your phone on each Fitbit, and they both work with iOS and Android. That being said, you’ll only be able to respond to notifications if it’s tied to Android. You can customize quick responses to messages from the Fitbit app.Fitbit Pay is a mobile wallet that lets you tap to pay with NFC at compatible terminals. It’s only available if you buy the special edition of both (which does come at a premium).fitbit-charge-versa-4 Angela Lang/CNET The Versa is the only one that can store music. It has space for around 300 songs, but the process to get those tunes onto the watch is cumbersome. You need to download a desktop app then make sure the Versa and your computer are on the same Wi-Fi network to start the transfer.If you prefer a streaming service, the only two options available are Pandora and Deezer, as long as you have a subscription. There is a third-party Spotify app available, but it is only to control playback from your phone.There are also many more third-party apps available on the Versa than there were when it first launched. Here’s a list of some of our favorites. The Charge 3 doesn’t have third-party apps at the time of writing.As the Versa was released in April 2018, a new edition of the watch potentially called Fitbit Versa 2 may be around the corner. We don’t have any insider information, but we’d love to see on-board GPS and Fitbit Pay integrated into the new version.Winner: VersaBattery life is stellar on the Charge 3There’s no contest here. You’ll get around six to seven full days on the Charge 3 before you need to juice it up, while the Versa gives you around four full days. Each has a proprietary clip-in charger. If you’re coming from the Charge 2, the cable for the Charge 3 is different.Winner: Charge 3What about price?At the time of writing, the Charge 3 costs $150 for the regular edition and $20 more gets you the special edition with Fitbit Pay and extra bands. The Versa is $200 and the special edition, also with Fitbit Pay, costs $30 more. Since the Versa was released almost a year ago, it has been discounted several times to a price that’s pretty comparable to the Charge 3 (the cheapest we’ve seen it in the past is $90).So comparing the Charge 3 and the Versa on price isn’t always straightforward, as you can get them for around the same price at certain times of the year.Winner: TieWhich is the best Fitbit for me?If you want Fitbit’s top of the line fitness tracker with a heart rate monitor and without too many bells and whistles, get the Charge 3. The battery will last you a long time and you’ll get notifications mirrored from your phone.If you’re looking for a smartwatch with a big screen, more robust fitness tracking on the watch itself, and the added bonus of a personal trainer on your wrist, get the Versa. No Fitbit Charge 3 vs. Fitbit Versa: How to choose reading • Fitbit Charge 3 vs. Versa: Which is the best fitness tracker? Water resistance Wearable Tech News • Fitbit Versa 2 could be coming next month Yes Yes How To • Apple Watch 3 vs. Fitbit Versa: Which smartwatch should you buy? $169 Aug 31 • iPhone XR vs. iPhone 8 Plus: Which iPhone should you buy? See It When it comes to fitness trackers, there are plenty of Fitbit options to choose from. For pure fitness trackers, there’s the Alta HR and Charge 3, or for smartwatches, the Ionic and Versa. Here’s how two of the most popular Fitbits, the Charge 3 and the Versa, compare on everything from fitness features to getting notifications from your phone. Music storage Up to 50m Mentioned Above Fitbit Versa (rose gold/peach) See All Fitbit Versa Aug 31 • Your phone screen is gross. Here’s how to clean it Walmart Four days Up to 1 week Adjustable straps Dell Apple Women’s health tracking Even though the Versa was released in early 2018 and the Charge 3 came out toward the end of the same year, Fitbit OS 3.0 gave each device very similar fitness tracking features. See It Display Best laptops for college students: We’ve got an affordable laptop for every student. Best live TV streaming services: Ditch your cable company but keep the live channels and DVR. Tags Share your voice Sleep tracking 8 Comments • Third-party apps Fitbit Versalast_img read more

Using statistical tools in Wireshark for packet analysis Tutorial

first_imgOne of Wireshark’s strengths is its statistical tools. When using Wireshark, we have various types of tools, starting from the simple tools for listing end-nodes and conversations, to the more sophisticated tools such as flow and I/O graphs. In this article, we will look at the simple tools in Wireshark that provide us with basic network statistics i.e; who talks to whom over the network, what are the chatty devices, what packet sizes run over the network, and so on. To start statistics tools, start Wireshark, and choose Statistics from the main menu. This article is an excerpt from Network Analysis using Wireshark 2 Cookbook – Second Edition written by Nagendra Kumar Nainar, Yogesh Ramdoss, Yoram Orzach. Using the statistics for capture file properties menu In this recipe, we will learn how to get general information from the data that runs over the network. The capture file properties in Wireshark 2 replaces the summary menu in Wireshark 1. Start Wireshark, click on Statistics. How to do it… From the Statistics menu, choose Capture File Properties: What you will get is the Capture File Properties window (displayed in the following screenshot). As you can see in the following screenshot, we have the following: File: Provides file data, such as filename and path, length, and so on Time: Start time, end time, and duration of capture Capture: Hardware information for the PC that Wireshark is installed on Interfaces: Interface information—the interface registry identifier on the left, if capture filter is turned on, interface type and packet size limit Statistics: General capture statistics, including captured and displayed packets: How it works… This menu simply gives a summary of the filtered data properties and the capture statistics (average packets or bytes per second) when someone wants to learn the capture statistics. Using the statistics for protocol hierarchy menu In this recipe, we will learn how to get protocol hierarchy information of the data that runs over the network. Start Wireshark, click on Statistics. How to do it… From the Statistics menu, choose Protocol Hierarchy: What you will get is data about the protocol distribution in the captured file. You will get the protocol distribution of the captured data. The partial screenshot displayed here depicts the statistics of packets captured on a per-protocol basis: What you will get is the Protocol Hierarchy window: Protocol: The protocol name Percent Packets: The percentage of protocol packets from the total captured packets Packets: The number of protocol packets from the total captured packets Percent Bytes: The percentage of protocol bytes from the total captured packets Bytes: The number of protocol bytes from the total captured packets Bit/s: The bandwidth of this protocol, in relation to the capture time End Packets: The absolute number of packets of this protocol (for the highest protocol in the decode file) End Bytes: The absolute number of bytes of this protocol (for the highest protocol in the decode file) End Bit/s: The bandwidth of this protocol, relative to the capture packets and time (for the highest protocol in the decode file) The end columns counts when the protocol is the last protocol in the packet (that is, when the protocol comes at the end of the frame). These can be TCP packets with no payload (for example, SYN packets) which carry upper layer protocols. That is why you see a zero count for Ethernet, IPv4, and UDP end packets; there are no frames where those protocols are the last protocol in the frame. In this file example, we can see two interesting issues: We can see 1,842 packets of DHCPv6. If IPv6 and DHCPv6 are not required, disable it. We see more than 200,000 checkpoint high availability (CPHA) packets, 74.7% of which are sent over the network we monitored. These are synchronization packets that are sent between two firewalls working in a cluster, updating session tables between the firewalls. Such an amount of packets can severely influence performance. The solution for this problem is to configure a dedicated link between the firewalls so that session tables will not influence the network. How it works… Simply, it calculates statistics over the captured data. Some important things to notice: The percentage always refers to the same layer protocols. For example, in the following screenshot, we see that logical link control has 0.5% of the packets that run over Ethernet, IPv6 has 1.0%, IPv4 has 88.8% of the packets, ARP has 9.6% of the packets and even the old Cisco ISK has 0.1 %—a total of 100 % of the protocols over layer 2 Ethernet. On the other hand, we see that TCP has 75.70% of the data, and inside TCP, only 12.74% of the packets are HTTP, and that is almost it. This is because Wireshark counts only the packets with the HTTP headers. It doesn’t count, for example, the ACK packets, data packets, and so on: Using the statistics for conversations menu In this recipe, we will learn how to get conversation information of the data that runs over the network. Start Wireshark, click on Statistics. How to do it… From the Statistics menu, choose Conversations: The following window will come up: You can choose between layer 2 Ethernet statistics, layer 3 IP statistics, or layer 4 TCP or UDP statistics. You can use this statistics tools for: On layer 2 (Ethernet): To find and isolate broadcast storms On layer 3/layer 4 (TCP/IP): To connect in parallel to the internet router port, and check who is loading the line to the ISP If you see that there is a lot of traffic going out to port 80 (HTTP) on a specific IP address on the internet, you just have to copy the address to your browser and find the website that is most popular with your users. If you don’t get anything, simply go to a standard DNS resolution website (search Google for DNS lookup) and find out what is loading your internet line. For viewing IP addresses as names, you can check the Name resolution checkbox for name resolution (1 in the previous screenshot). For seeing the name resolution, you will first have to enable it by choosing View | Name Resolution | Enable for Network layer. You can also limit the conversations statistics to a display filter by checking the Limit to display filter checkbox (2). In this way, statistics will be presented on all the packets passing the display filter. A new feature in Wireshark version 2 is the graph feature, marked as (5) in the previous screenshot. When you choose a specific line in the TCP conversations statistics and click Graph…, it brings you to the TCP time/sequence (tcptrace) stream graph. To copy table data, click on the Copy button (3). In TCP or UDP, you can mark a specific line, and then click on the Follow Stream… button (4). This will define a display filter that will show you the specific stream of data. As you can see in the following screenshot, you can also right-click a line and choose to prepare or apply a filter, or to colorize a data stream: We also see that, unlike the previous Wireshark version, in which we saw all types of protocols in the upper tabs, here we can choose which protocols to see when only the identified protocols are presented by default. How it works… A network conversation is the traffic between two specific endpoints. For example, an IP conversation is all the traffic between two IP addresses, and TCP conversations present all TCP connections. Using the statistics for endpoints menu In this recipe, we will learn how to get endpoint statistics information of the captured data. Start Wireshark and click on Statistics. How to do it… To view the endpoint statistics, follow these steps: From the Statistics menu, choose Endpoints: The following window will come up: In this window, you will be able to see layer 2, 3, and 4 endpoints, which is Ethernet, IP, and TCP or UDP. From the left-hand side of the window you can see (here is an example for the TCP tab): Endpoint IP address and port number on this host Total packets sent, and bytes received from and to this host Packets to the host (Packets A → B) and bytes to host (Bytes A → B) Packets to the host (Packets B → A) and bytes to host (Bytes B → A) The Latitude and Longitude columns applicable with the GeoIP configured At the bottom of the window we have the following checkboxes: Name resolution: Provide name resolution in cases where it is configured in the name resolution under the view menu. Limit to display filter: To show statistics only for the display filter configured on the main window. Copy: Copy the list values to the clipboard in CSV or YAML format. Map: In cases where GeoIP is configured, shows the geographic information on the geographical map. How it works… Quite simply, it gives statistics on all the endpoints Wireshark has discovered. It can be any situation, such as the following: Few Ethernet (even on) end nodes (that is, MAC addresses), with many IP end nodes (that is, IP addresses)—this will be the case where, for example, we have a router that sends/receives packets from many remote devices. Few IP end nodes with many TCP end nodes—this will be the case for many TCP connections per host. Can be a regular operation of a server with many connections, and it could also be a kind of attack that comes through the network (SYN attack). We learned about Wireshark’s basic statistic tools and how you can leverage those for network analysis. Get over 100 recipes to analyze and troubleshoot network problems using Wireshark 2 from this book Network Analysis using Wireshark 2 Cookbook – Second Edition. Read Next: What’s new in Wireshark 2.6 ? Wireshark for analyzing issues & malicious emails in POP, IMAP, and SMTP  [Tutorial] Capturing Wireshark Packetslast_img read more

16 JavaScript frameworks developers should learn in 2019

first_imgAccording to Stack Overflow’s Developer Survey 2018, JavaScript is one of the most widely used programming languages. Thanks to its ever-evolving framework ecosystem to find the best solution for complex and challenging problems. Although JavaScript has spent most of its lifetime being associated with web development, in recent years, its usage seems to be expanding. Not only has it moved from front to back end, we’re also beginning to see it used for things like machine learning and augmented reality. JavaScript’s evolution is driven by frameworks. And although there are a few that seem to be leading the way, there are many other smaller tools that could be well worth your attention in 2019. Let’s take a look at them now. JavaScript web development frameworks React React was first developed by Facebook in 2011 and then open sourced in 2013. Since then it has become one of the most popular JavaScript libraries for building user interfaces. According to npm’s survey, despite a slowdown in React’s growth in 2018, it will be the dominant framework in 2019. The State of JavaScript 2018 survey designates it as “a safe technology to adopt” given its high usage satisfaction ratio and a large user base. In 2018, the React team released versions from 16.3 to 16.7 with some major updates. These updates included new lifecycle methods, Context API, suspense for code splitting, a React Profiler, Create React App 2.0, and more. The team has already laid out its plan for 2019 and will soon be releasing one of the most awaited feature, Hooks. It allows developers to access features such as state without using JavaScript classes. It aims to simplify the code for React components by allowing developers to reuse stateful logic without making any changes to the component hierarchy. Other features will include a concurrent mode to allow component tree rendering without blocking the main thread, suspense for data fetching, and more. Vue Vue was created by Evan You after working for Google using AngularJS in a number of projects. It was first released in 2014. Sharing his motivation for creating Vue, Evan said, “I figured, what if I could just extract the part that I really liked about Angular and build something really lightweight.” Vue has continued to show great adoption among JavaScript developers and I doubt this trend is going to stop anytime soon. According to the npm survey, some developers prefer Vue over React because they feel that it is “easier to get started with, while maintaining extensibility.” Vue is a library that allows developers to build interactive web interfaces. It provides data-reactive components, similar to React, with a simple and flexible API. Unlike React or Angular, one of the benefits of Vue is the clean HTML output it produces. Other JavaScript libraries tend to leave the HTML scattered with extra attributes and classes in the code, whereas Vue removes these to produce clean, semantic output. It provides advanced feature such as routing, state management, and build tooling for complex applications via officially maintained supporting libraries and packages. Angular Google developed AngularJS in 2009 and released its first version in 2012. Since then it saw enthusiastic support and widespread adoption among both enterprises and individuals. AngularJS was originally developed for designers, not developers. While it did saw a few evolutionary improvements in its design, they were not enough to fulfill developer requirements. The later versions, Angular 2, Angular 4, and so on have been upgraded to provide an overall improvement in performance, especially in speed and dependency injection. The new version is simply called Angular, a platform and framework that allows developers to build client applications in HTML and TypeScript. It comes with declarative templates, dependency injection, end to end tooling, and integrated best practices to solve development challenges. While the architecture of AngularJS is based on model-view-controller (MVC) design, Angular has a component-based architecture. Every Angular application consists of at least one component known as the root component. Each component is associated to a class that’s responsible for handling the business logic and a template that represents the view layer. Node.js There has been a lot of debate around whether Node is a framework (it’s really a library), but when talking about web development it is very hard to skip it. Node.js was originally written by Ryan Dahl, which he demonstrated at the the inaugural European JSConf on November 8, 2009. Node.js is an free, open-source, cross-platform JavaScript run-time environment that executes JavaScript code outside of a browser. Node.js follows a “JavaScript everywhere” paradigm by unifying web application development around a single programming language, rather than different languages for server side and client side scripts. At the JSConf 2018, Dahl described some limitations about his server-side JavaScript runtime engine. Many parts of its architecture suffer from limitations including security and how modules are managed. As a solution to this he introduced a new software project, called Deno, a secure TypeScript runtime on V8 JavaScript engine that sets out to correct some of the design flaws in Node.js. Cross-platform mobile development frameworks React Native The story of React Native started in the summer of 2013 as Facebook’s internal hackathon project and it was later open sourced in 2015. React Native is a JavaScript framework used to build native mobile applications. As you might have already guessed from its name, React Native is based on React, that we discussed earlier. The reason why it is called “native” is that the UI built with React Native consists of native UI widgets that look and feel consistent with the apps you built using native languages. Under the hood, React Native translates your UI definition written in Javascript/JSX into a hierarchy of native views correct for the target platform. For example, if we are building an iOS app, it will translate the Text primitive to a native iOS UIView, and in Android, it will result with a native TextView. So, even though we are writing a JavaScript application, we do not get a web app embedded inside the shell of a mobile one. We are getting a “real native app”. NativeScript NativeScript was developed by Telerik (a subsidiary of Progress) and first released in 2014. It’s an open source framework that helps you build apps using JavaScript or any other language that transpiles to JavaScript, for example, TypeScript. It directly supports the Angular framework and supports the Vue framework via a community-developed plugin. Mobile applications built with NativeScript result in fully native apps, which use the same APIs as if they were developed in Xcode or Android Studio. Since the applications are built in JavaScript there is a need for some proxy mechanism to translate JavaScript code to the corresponding native APIs. This is done by the runtime parts of NativeScript, which act as a “bridge” between the JavaScript and the native world (Android and iOS). The runtimes facilitate calling APIs in the Android and iOS frameworks using JavaScript code. To do that JavaScript Virtual Machines are used – Google’s V8 for Android and WebKit’s JavaScriptCore implementation distributed with iOS 7.0+. Ionic Framework The Ionic framework was created by Drifty Co. and initially released in 2013. It is an open source, frontend SDK for developing hybrid mobile apps with familiar web technologies such as HTML5, CSS, and JavaScript. With Ionic, you will be able to build and deploy apps that work across multiple platforms, such as native iOS, Android, desktop, and the web as a Progressive Web App. Ionic is mainly focused on an application’s look and feel, or the UI interaction. This tells us that it’s not meant to replace Cordova or your favorite JavaScript framework. In fact, it still needs a native wrapper like Cordova to run your app as a mobile app. It uses these wrappers to gain access to host operating systems features such as Camera, GPS, Flashlight, etc. Ionic apps run in low-level browser shell like UIWebView in iOS or WebView in Android, which is wrapped by tools like Cordova/PhoneGap. JavaScript Desktop application development frameworks Electron Electron was created by Cheng Zao, a software engineer at GitHub. It was initially released in 2013 as Atom Shell and then was renamed to Electron in 2015. Electron enables web developers to use their existing knowledge and native developers to build one codebase and ship it for each platform separately. There are many popular apps that are build with Electron including Slack, Skype for Linux, Simplenote, and Visual Studio Code, among others. An Electron app consists of three components: Chromium web engine, a Node.js interpreter, and your application’s source code. The Chromium web engine is responsible for rendering the UI. The Node.js interpreter executes JavaScript and provides your app access to OS features that are not available to the Chromium engine such as filesystem access, networking, native desktop functions, etc. The application’s source code is usually a combination of JavaScript, HTML, and CSS. JavaScript Machine learning frameworks Tensorflow.js At the TensorFlow Dev Summit 2018, Google announced the JavaScript implementation of TensorFlow, their machine learning framework, called TensorFlow.js. It is the successor of deeplearn.js, which was released in August 2017, and is now named as TensorFlow.js Core. The team recently released Node.js bindings for TensorFlow, so now the same JavaScript code will work on both the browser and Node.js. Tensorflow.js consists of four layers, namely the WebGL API for GPU-supported numerical operations, the web browser for user interactions, and two APIs: Core and Layers. The low-level Core API corresponds to the former deeplearn.js library, which provides hardware-accelerated linear algebra operations and an eager API for automatic differentiation. The higher-level Layers API is used to build machine-learning models on top of Core. It also allow developers to import models previously trained in Python with Keras or TensorFlow SavedModels and use it for inference or transfer learning in the browser. Brain.js Brain.js is a library of neural network written in JavaScript, a continuation of the “brain” library, which can be used with Node.js or in the browser. It simplifies the process of creating and training a neural network by utilizing the ease-of-use of JavaScript and by limiting the API to just a few method calls and options. It comes with different types of networks for different tasks, which include a feedforward neural network with backpropagation, time step recurrent neural network, time step long short term memory neural network, among others. JavaScript augmented reality and virtual reality frameworks React 360 In 2017, Facebook and Oculus together introduced React VR, which was revamped and rebranded last year as React 360. This improved version simplifies UI layout in 3D space and is faster than React VR. Built on top of React, which we discussed earlier, React 360 is a JavaScript library that enables developers to create 3D and VR interfaces. It allows web developers to use familiar tools and concepts to create immersive 360 experiences on the web. An application built with React 360 consists of two pieces, namely, your React application and runtime, which turns your components into 3D elements on the screen. This “division of roles” concept is similar to React Native. As web browsers are single-threaded, the app code is separated from the rendering code to avoid any blocking behavior in the app. By running the app code in a separate context, the rendering loop is allowed to consistently update at a high frame rate. AR.js AR.js was developed by Jerome Etienne in 2017 with the aim of implementing augmented reality efficiently on the web. It currently gives efficiency of 60fps, which is not bad for an open source web-based solution. The library was inspired by projects like three.js, ARToolKit 5, emscripten and Chromium. AR.js requires WebGL, a 3D graphics API for the HTML5 Canvas element, and WebRTC, a set of browser APIs and protocols that allow for real-time communications of audio, video, and data in web browsers and native apps. Leveraging features in ARToolKit and A-Frame, AR.js makes the development of AR for the web a straightforward process that can be implemented by novice coders. New and emerging JavaScript frameworks Gatsby.js The creator of Gatsby, Kyle Mathews, quit his startup job in 2017 and started focusing full-time on his side projects: Gatsby.js and Typography.js. Gatsby.js was initially released in 2015 and its first version came out in 2017. It is a modern site generator for React.js, which means everything in Gatsby is built using components. With Gatsby, you can create both dynamic and static websites/web apps ranging from simple blogs, e-commerce websites to user dashboards. Gatsby supports many database sources such as Markdown files, a headless CMS like Contentful or WordPress, or a REST or GraphQL API, which you can consolidate via GraphQL. It also makes things like code splitting, image optimization, inlining critical styles, lazy-loading, and prefetching resources easier by automating them. Next.js Next.js was created by ZEIT and open sourced in 2016. Built on top of React, Webpack, and Babel, Next.js is a small JavaScript framework that enables an easy server-side rendering of React applications. It provides features like automatic code splitting, simple client-side routing, Webpack-based dev environment which supports HMR, and more. It aims to help developers write an isomorphic React application, so that the same rendering logic can be used for both client-side and server-side rendering. Next.js basically allows you to write a React app, with the SSR and things like code splitting being taken care of for you. It supports two server-side rendering modes: on demand and static export. On demand rendering means for each request, a unique page is rendered. This property is great for web apps that are highly dynamic, in which content changes often, have a login state, and similar use cases. This mode requires having a Node.js server running. While static export on other hand renders all pages to .html files up-front and serves them using any file server. This mode does not require a Node.js server running and the HTML can run anywhere. Nuxt.js Nuxt.js was originally created by the Chopin brothers, Alexandre and Sébastien Chopin and released in 2016. In January 2018, it was updated to a production-ready 1.0 version and is backed by an active and well-supported community. It is a higher-level framework inspired by Next.js, which builds on top of the Vue.js ecosystem and simplifies the development of universal or single page Vue.js applications. Under the hood, Nuxt.js uses webpack with vue-loader and babel-loader to bundle, code-split and minify your code. One of the perks of using Nuxt,js is that it provides a nuxt generate command, which generates a completely static version of your Vue application using the same codebase. In addition to that, it provides features for the development between the client side and the server side such as Asynchronous Data, Middleware, Layouts, etc. NestJS NestJS was created by Kamil Mysliwiec and released in 2017. It is a framework for effortlessly building efficient, reliable, and scalable Node.js server-side applications. It builds on top of TypeScript and JavaScript (ES6, ES7, ES8) and is heavily inspired by Angular as both use a Module/Component system that allows for reusability. Under the hood, NestJS uses Express, and is also compatible with a wide range of other libraries, for example, Fastify. For most of its abstractions, it uses classes and leverages the benefits of decorators and metadata reflection that classes and TypeScript bring. It comes with concepts like guards, pipes, and interceptors, and built-in support for other transports like WebSockets and gRPC. These were some of my picks from the plethora of JavaScript frameworks. You surely don’t have to be an expert in all of them. Play with them, read the documentation, get an overview of their features. Before you start using a framework you can check it for few things such as the problems it solve, any other frameworks which do the same things better, if it aligns with your project requirement, which type of projects would this framework be ideal for, etc. If that framework appeals to you, maybe try to build a project with one. Read Next npm JavaScript predictions for 2019: React, GraphQL, and TypeScript are three technologies to learn 4 key findings from The State of JavaScript 2018 developer survey JavaScript mobile frameworks comparison: React Native vs Ionic vs NativeScriptlast_img read more

Intrepid releases annual Not Hot List in response to overtourism

first_imgIntrepid releases annual ‘Not Hot List’ in response to overtourism Travelweek Group Friday, October 12, 2018 TORONTO — In an effort to raise awareness about overtourism, particularly in Asia where it has become a major issue, Intrepid Travel has released its annual ‘Not Hot List’ that focuses on lesser-known and more sustainable destinations to visit in 2019.Now in its second year, the list was developed in response to concerns about overtourism, and supports the company’s ongoing commitment to responsible tourism.“Recently, we’ve seen a number of Asian countries take a proactive approach to combat overtourism. North Americans are increasingly concerned with overtourism and this is about encouraging them to step away from the familiar to approach this continent in the most ‘intrepid’ way possible,” said Intrepid Travel’s Regional Director for North America, Darshika Jones.Jones added that tourism can be a “potent force for good”, and that Intrepid believes that the broader the travel experience, the better. “As North American’s interest in travelling to Asia continues to grow, the more dispersal to lesser-known regions, the better,” she added.More news:  Sunwing to further boost Mazatlán service with new flights from OttawaHere is the 2019 Not Hot List:The Similan Islands is the new Maya Bay: With Maya Bay no longer a travel option as of summer 2018, clients can still enjoy the warm waters of the Andaman Sea when visiting the Similan Islands. The islands combine rainforests and pristine beaches with a touch of history, having been made a UNESCO World Heritage site in 1982. After being hit by the 2004 tsunami, the island of Khao Lak has since recovered. Intrepid’s ‘Cruising the Thai Islands’ adventure cruise is priced from $2,621 per person.Komodo is the new Ubud: Once considered the adventurous alternative to Seminyak, Ubud in Bali has flourished in popularity, which has put pressure on local infrastructure. Komodo is a viable alternative for clients willing to sail from Bali through the Indonesian archipelago. It’s a place where ancient tribes maintain their traditions in deep rainforest valleys, and where guests can snorkel coral reefs, walk across volcanic beaches and watch for legendary Komodo dragons. Intrepid’s ‘Komodo and Flores’ tour is priced from $1,890 per person.Bukhara is the new Angkor Wat: Uzbekistan’s fifth largest city, Bukhara, is a UNESCO World Heritage site; its entire old city centre has more than 5,000 years of human history. There are over 140 monuments and historical buildings to explore, including Po-i-Kalyan Mosque which, during its 1,300-year history, even survived assault from Genghis Khan. Intrepid’s ‘Uzbekistan Adventure’ is priced from $1,675 per person.Ladakh is the new Everest: While Nepal will always be a must-visit for adventurers, Ladakh, India is rising in popularity for its hiking and Himalayan views. Travellers can break up the hiking with river rafting and visits to remote villages, monasteries and religious sites, and also explore Delhi before or after their treks. Intrepid’s ‘India Himalaya: Bike, Hike and Raft in Ladakh’ tour is priced from $2,070 per person. Tags: Intrepid Group, Intrepid Travelcenter_img << Previous PostNext Post >> Posted by Sharelast_img read more

Earn 10 commission when booking on TravelCars agent platform

first_img Friday, December 14, 2018 Earn 10% commission when booking on TravelCar’s agent platform Posted by Travelweek Group LOS ANGELES — TravelCar.com has launched a new incentive program for agents in both Canada and the U.S., just in time for the holidays.Travel agents who use TravelCar’s ‘Travel Agent Platform’ to book parking reservations for their clients will earn a 10% commission, plus be entered in a contest to win up to US$250 in Amazon gift cards.Reservations must be made between Dec. 14, 2018 and Jan. 7, 2019.The platform was launched in October as a way for agents to book parking at airports, seaports, train stations and city centres in more than 50 countries. The company has already partnered with more than 40 agencies in the U.S. and Canada.TravelCar’s parking network in the U.S. covers more than 50 cities, including 18 of the top 20 major airports with parking options at the top four airports in Canada.“We value our travel agent partners and wanted to create an incentive program for the holiday season that would let them know how much we appreciate their business,” said CEO and Co-Founder Ahmed Mhiri. “This is just the first of many incentive programs to come and we look forward to working with our current and future travel agent partners.”More news:  Apply now for AQSC’s agent cruise ratesThe contest is open to all travel agents and agencies based in the U.S. and Canada. Agents can sign up for access for free at join.travelcar.com and begin making reservations for clients.center_img Share Tags: Agent Incentives, TravelCar << Previous PostNext Post >>last_img read more