as After 30 Years Studying Climate, Scientist Declares: “I’ve Never Been as Worried as I Am Today” By feedproxy.google.com Published On :: Sat, 15 Dec 2018 00:13:19 +0000 By Jake Johnson Common Dreams And colleague says “global warming” no longer strong enough term. “Global heating is technically more correct because we are talking about changes in the energy balance of the planet.” Declaring that after three decades of … Continue reading → Full Article Points of View & Opinions Climate Change Global Warming global warming denial
as For Rachel Carson, wonder was a radical state of mind By feedproxy.google.com Published On :: Fri, 27 Sep 2019 18:33:25 +0000 By Jennifer Stitt Aeon In 1957, the world watched in wonder as the Soviet Union launched Sputnik 1, the first artificial satellite, into outer space. Despite Cold War anxieties, The New York Times admitted that space exploration ‘represented a step … Continue reading → Full Article ecoView ecological philosophy Ecology Heroes Rachel Carson Silent Spring
as [Podcast] How to Sell Brand Strategy By justcreative.com Published On :: Mon, 04 May 2020 04:56:55 +0000 Learn how to sell strategy... Jacob Cass & Matt Davies give different perspectives on how to approach sales & the brand building process. Tune in to episode 4! Full Article Podcast Brand Strategy Branding JUST Branding
as How to Master the Elevator Pitch & Leave a Great First Impression By justcreative.com Published On :: Mon, 04 May 2020 06:12:24 +0000 Want to master the elevator pitch and leave a great first impression? Use this easy formula to help communicate what you do in a concise pitch! Full Article Business Elevator Pitch
as How To Get Effective Help With Writing Tasks That Will Boost Your Own Writing Skills By icanbecreative.com Published On :: Tue, 10 Mar 2020 05:21:10 PDT Writing is a quite ambivalent word. For some students, it causes their worst nightmares to come to mind (or it is just a boring assignment) and for some, it’s the fun way to express their thoughts to... Full Article Review
as 5 Ways To Make Working From Home Easier By icanbecreative.com Published On :: Tue, 24 Mar 2020 13:44:03 PDT Working from home might sound like a fun and relaxing way to do your job, but many people who switch to working from home find it surprisingly difficult. In addition to finding the right tools, you... Full Article Learning
as Top 5 Best Internet Live Support Extension To Increase Customers Interactions By icanbecreative.com Published On :: Fri, 27 Mar 2020 03:19:08 PDT Creative interactions call for creative measures - numerous extensions reduce, minimize or dilute the frustration of the customers and resolve issues quickly without the customer support team need.... Full Article Learning
as 5 Tips For Doing A Fantastic Graphic Project By icanbecreative.com Published On :: Fri, 17 Apr 2020 17:00:24 PDT You’ve probably had the experience of browsing other people’s graphic projects and wishing you could achieve such effects too. In order to accomplish that, you should expand your knowledge by... Full Article Learning
as Never Stop Asking 'What If?' By feedproxy.google.com Published On :: Monday, July 16, 2018 - 6:26am We imagine the what-ifs as a worst case scenario, our worst nightmare happening to us, our life falling apart. But here’s another way of looking at it. Full Article
as Book Review: Love You Hard by Abby Maslin By feedproxy.google.com Published On :: Monday, January 21, 2019 - 8:33am This book packs a lot of wisdom. You’ll learn about aphasia; you’ll understand ambiguous loss; you’ll follow Abby down dark hallways and into sunlit rooms and learn what it means to own a life built on raw truth. Full Article
as Famous Hope Quotes as Charts By flowingdata.com Published On :: Fri, 08 May 2020 07:18:08 +0000 I thought we (i.e. me) could use a break, so I made these abstract charts to represent the most popular quotes about hope.Tags: hope, quote Full Article Chart Everything hope quote
as Markdown Comes Alive! Part 1, Basic Editor By feedproxy.google.com Published On :: Wed, 26 Feb 2020 08:00:00 -0500 In my last post, I covered what LiveView is at a high level. In this series, we’re going to dive deeper and implement a LiveView powered Markdown editor called Frampton. This series assumes you have some familiarity with Phoenix and Elixir, including having them set up locally. Check out Elizabeth’s three-part series on getting started with Phoenix for a refresher. This series has a companion repository published on GitHub. Get started by cloning it down and switching to the starter branch. You can see the completed application on master. Our goal today is to make a Markdown editor, which allows a user to enter Markdown text on a page and see it rendered as HTML next to it in real-time. We’ll make use of LiveView for the interaction and the Earmark package for rendering Markdown. The starter branch provides some styles and installs LiveView. Rendering Markdown Let’s set aside the LiveView portion and start with our data structures and the functions that operate on them. To begin, a Post will have a body, which holds the rendered HTML string, and title. A string of markdown can be turned into HTML by calling Post.render(post, markdown). I think that just about covers it! First, let’s define our struct in lib/frampton/post.ex: defmodule Frampton.Post do defstruct body: "", title: "" def render(%__MODULE{} = post, markdown) do # Fill me in! end end Now the failing test (in test/frampton/post_test.exs): describe "render/2" do test "returns our post with the body set" do markdown = "# Hello world!" assert Post.render(%Post{}, markdown) == {:ok, %Post{body: "<h1>Hello World</h1> "}} end end Our render method will just be a wrapper around Earmark.as_html!/2 that puts the result into the body of the post. Add {:earmark, "~> 1.4.3"} to your deps in mix.exs, run mix deps.get and fill out render function: def render(%__MODULE{} = post, markdown) do html = Earmark.as_html!(markdown) {:ok, Map.put(post, :body, html)} end Our test should now pass, and we can render posts! [Note: we’re using the as_html! method, which prints error messages instead of passing them back to the user. A smarter version of this would handle any errors and show them to the user. I leave that as an exercise for the reader…] Time to play around with this in an IEx prompt (run iex -S mix in your terminal): iex(1)> alias Frampton.Post Frampton.Post iex(2)> post = %Post{} %Frampton.Post{body: "", title: ""} iex(3)> {:ok, updated_post} = Post.render(post, "# Hello world!") {:ok, %Frampton.Post{body: "<h1>Hello world!</h1> ", title: ""}} iex(4)> updated_post %Frampton.Post{body: "<h1>Hello world!</h1> ", title: ""} Great! That’s exactly what we’d expect. You can find the final code for this in the render_post branch. LiveView Editor Now for the fun part: Editing this live! First, we’ll need a route for the editor to live at: /editor sounds good to me. LiveViews can be rendered from a controller, or directly in the router. We don’t have any initial state, so let's go straight from a router. First, let's put up a minimal test. In test/frampton_web/live/editor_live_test.exs: defmodule FramptonWeb.EditorLiveTest do use FramptonWeb.ConnCase import Phoenix.LiveViewTest test "the editor renders" do conn = get(build_conn(), "/editor") assert html_response(conn, 200) =~ "data-test="editor"" end end This test doesn’t do much yet, but notice that it isn’t live view specific. Our first render is just the same as any other controller test we’d write. The page’s content is there right from the beginning, without the need to parse JavaScript or make API calls back to the server. Nice. To make that test pass, add a route to lib/frampton_web/router.ex. First, we import the LiveView code, then we render our Editor: import Phoenix.LiveView.Router # … Code skipped ... # Inside of `scope "/"`: live "/editor", EditorLive Now place a minimal EditorLive module, in lib/frampton_web/live/editor_live.ex: defmodule FramptonWeb.EditorLive do use Phoenix.LiveView def render(assigns) do ~L""" <div data-test=”editor”> <h1>Hello world!</h1> </div> """ end def mount(_params, _session, socket) do {:ok, socket} end end And we have a passing test suite! The ~L sigil designates that LiveView should track changes to the content inside. We could keep all of our markup in this render/1 method, but let’s break it out into its own template for demonstration purposes. Move the contents of render into lib/frampton_web/templates/editor/show.html.leex, and replace EditorLive.render/1 with this one liner: def render(assigns), do: FramptonWeb.EditorView.render("show.html", assigns). And finally, make an EditorView module in lib/frampton_web/views/editor_view.ex: defmodule FramptonWeb.EditorView do use FramptonWeb, :view import Phoenix.LiveView end Our test should now be passing, and we’ve got a nicely separated out template, view and “live” server. We can keep markup in the template, helper functions in the view, and reactive code on the server. Now let’s move forward to actually render some posts! Handling User Input We’ve got four tasks to accomplish before we are done: Take markdown input from the textarea Send that input to the LiveServer Turn that raw markdown into HTML Return the rendered HTML to the page. Event binding To start with, we need to annotate our textarea with an event binding. This tells the liveview.js framework to forward DOM events to the server, using our liveview channel. Open up lib/frampton_web/templates/editor/show.html.leex and annotate our textarea: <textarea phx-keyup="render_post"></textarea> This names the event (render_post) and sends it on each keyup. Let’s crack open our web inspector and look at the web socket traffic. Using Chrome, open the developer tools, navigate to the network tab and click WS. In development you’ll see two socket connections: one is Phoenix LiveReload, which polls your filesystem and reloads pages appropriately. The second one is our LiveView connection. If you let it sit for a while, you’ll see that it's emitting a “heartbeat” call. If your server is running, you’ll see that it responds with an “ok” message. This lets LiveView clients know when they've lost connection to the server and respond appropriately. Now, type some text and watch as it sends down each keystroke. However, you’ll also notice that the server responds with a “phx_error” message and wipes out our entered text. That's because our server doesn’t know how to handle the event yet and is throwing an error. Let's fix that next. Event handling We’ll catch the event in our EditorLive module. The LiveView behavior defines a handle_event/3 callback that we need to implement. Open up lib/frampton_web/live/editor_live.ex and key in a basic implementation that lets us catch events: def handle_event("render_post", params, socket) do IO.inspect(params) {:noreply, socket} end The first argument is the name we gave to our event in the template, the second is the data from that event, and finally the socket we’re currently talking through. Give it a try, typing in a few characters. Look at your running server and you should see a stream of events that look something like this: There’s our keystrokes! Next, let’s pull out that value and use it to render HTML. Rendering Markdown Lets adjust our handle_event to pattern match out the value of the textarea: def handle_event("render_post", %{"value" => raw}, socket) do Now that we’ve got the raw markdown string, turning it into HTML is easy thanks to the work we did earlier in our Post module. Fill out the body of the function like this: {:ok, post} = Post.render(%Post{}, raw) IO.inspect(post) If you type into the textarea you should see output that looks something like this: Perfect! Lastly, it’s time to send that rendered html back to the page. Returning HTML to the page In a LiveView template, we can identify bits of dynamic data that will change over time. When they change, LiveView will compare what has changed and send over a diff. In our case, the dynamic content is the post body. Open up show.html.leex again and modify it like so: <div class="rendered-output"> <%= @post.body %> </div> Refresh the page and see: Whoops! The @post variable will only be available after we put it into the socket’s assigns. Let’s initialize it with a blank post. Open editor_live.ex and modify our mount/3 function: def mount(_params, _session, socket) do post = %Post{} {:ok, assign(socket, post: post)} end In the future, we could retrieve this from some kind of storage, but for now, let's just create a new one each time the page refreshes. Finally, we need to update the Post struct with user input. Update our event handler like this: def handle_event("render_post", %{"value" => raw}, %{assigns: %{post: post}} = socket) do {:ok, post} = Post.render(post, raw) {:noreply, assign(socket, post: post) end Let's load up http://localhost:4000/editor and see it in action. Nope, that's not quite right! Phoenix won’t render this as HTML because it’s unsafe user input. We can get around this (very good and useful) security feature by wrapping our content in a raw/1 call. We don’t have a database and user processes are isolated from each other by Elixir. The worst thing a malicious user could do would be crash their own session, which doesn’t bother me one bit. Check the edit_posts branch for the final version. Conclusion That’s a good place to stop for today. We’ve accomplished a lot! We’ve got a dynamically rendering editor that takes user input, processes it and updates the page. And we haven’t written any JavaScript, which means we don’t have to maintain or update any JavaScript. Our server code is built on the rock-solid foundation of the BEAM virtual machine, giving us a great deal of confidence in its reliability and resilience. In the next post, we’ll tackle making a shared editor, allowing multiple users to edit the same post. This project will highlight Elixir’s concurrency capabilities and demonstrate how LiveView builds on them to enable some incredible user experiences. Full Article Code Back-end Engineering
as CLI Equivalents for Common MAMP PRO and Sequel Pro Tasks By feedproxy.google.com Published On :: Thu, 26 Mar 2020 00:00:00 -0400 Working on website front ends I sometimes use MAMP PRO to manage local hosts and Sequel Pro to manage databases. Living primarily in my text editor, a terminal, and a browser window, moving to these click-heavy dedicated apps can feel clunky. Happily, the tasks I have most frequently turned to those apps for —starting and stopping servers, creating new hosts, and importing, exporting, deleting, and creating databases— can be done from the command line. I still pull up MAMP PRO if I need to change a host's PHP version or work with its other more specialized settings, or Sequel Pro to quickly inspect a database, but for the most part I can stay on the keyboard and in my terminal. Here's how: Command Line MAMP PRO You can start and stop MAMP PRO's servers from the command line. You can even do this when the MAMP PRO desktop app isn't open. Note: MAMP PRO's menu icon will not change color to reflect the running/stopped status when the status is changed via the command line. Start the MAMP PRO servers: /Applications/MAMP PRO.app/Contents/MacOS/MAMP PRO cmd startServers Stop the MAMP PRO servers: /Applications/MAMP PRO.app/Contents/MacOS/MAMP PRO cmd stopServers Create a host (replace host_name and root_path): /Applications/MAMP PRO.app/Contents/MacOS/MAMP PRO cmd createHost host_name root_path MAMP PRO-friendly Command Line Sequel Pro Note: if you don't use MAMP PRO, just replace the /Applications/MAMP/Library/bin/mysql with mysql. In all of the following commands, replace username with your user name (locally this is likely root) and database_name with your database name. The -p (password) flag with no argument will trigger an interactive password prompt. This is more secure than including your password in the command itself (like -pYourPasswordHere). Of course, if you're using the default password root is not particular secure to begin with so you might just do -pYourPasswordHere. Setting the -h (host) flag to localhost or 127.0.0.1 tells mysql to look at what's on localhost. With the MAMP PRO servers running, that will be the MAMP PRO databases. # with the MAMP PRO servers running, these are equivalent: # /Applications/MAMP/Library/bin/mysql -h 127.0.0.1 other_options # and # /Applications/MAMP/Library/bin/mysql -h localhost other_options /Applications/MAMP/Library/bin/mysql mysql_options # enter. opens an interactive mysql session mysql> some command; # don't forget the semicolon mysql> exit; Create a local database # with the MAMP PRO servers running # replace `username` with your username, which is `root` by default /Applications/MAMP/Library/bin/mysql -h localhost -u username -p -e "create database database_name" or # with the MAMP PRO servers running # replace `username` (`root` by default) and `database_name` /Applications/MAMP/Library/bin/mysql -h localhost -u username -p # and then enter mysql> create database database_name; # don't forget the semicolon mysql> exit MAMP PRO's databases are stored in /Library/Application Support/appsolute/MAMP PRO/db so to confirm that it worked you can ls /Library/Application Support/appsolute/MAMP PRO/db # will output the available mysql versions. For example I have mysql56_2018-11-05_16-25-13 mysql57 # If it isn't clear which one you're after, open the main MAMP PRO and click # on the MySQL "servers and services" item. In my case it shows "Version: 5.7.26" # Now look in the relevant MySQL directory ls /Library/Application Support/appsolute/MAMP PRO/db/mysql57 # the newly created database should be in the list Delete a local database # with the MAMP PRO servers running # replace `username` (`root` by default) and `database_name` /Applications/MAMP/Library/bin/mysql -h localhost -u username -p -e "drop database database_name" Export a dump of a local database. Note that this uses mysqldump not mysql. # to export an uncompressed file # replace `username` (`root` by default) and `database_name` /Applications/MAMP/Library/bin/mysqldump -h localhost -u username -p database_name > the/output/path.sql # to export a compressed file # replace `username` (`root` by default) and `database_name` /Applications/MAMP/Library/bin/mysqldump -h localhost -u username -p database_name | gzip -c > the/output/path.gz Export a local dump from an external database over SSH. Note that this uses mysqldump not mysql. # replace `ssh-user`, `ssh_host`, `mysql_user`, `database_name`, and the output path # to end up with an uncompressed file ssh ssh_user@ssh_host "mysqldump -u mysql_user -p database_name | gzip -c" | gunzip > the/output/path.sql # to end up with a compressed file ssh ssh_user@ssh_host "mysqldump -u mysql_user -p database_name | gzip -c" > the/output/path.gz Import a local database dump into a local database # with the MAMP PRO servers running # replace `username` (`root` by default) and `database_name` /Applications/MAMP/Library/bin/mysql -h localhost -u username -p database_name < the/dump/path.sql Import a local database dump into a remote database over SSH. Use care with this one. But if you are doing it with Sequel Pro —maybe you are copying a Craft site's database from a production server to a QA server— you might as well be able to do it on the command line. ssh ssh_user@ssh_host "mysql -u username -p remote_database_name" < the/local/dump/path.sql For me, using the command line instead of the MAMP PRO and Sequel Pro GUI means less switching between keyboard and mouse, less opening up GUI features that aren't typically visible on my screen, and generally better DX. Give it a try! And while MAMP Pro's CLI is limited to the essentials, command line mysql of course knows no limits. If there's something else you use Sequel Pro for, you may be able to come up with a mysql CLI equivalent you like even better. Full Article Code Front-end Engineering Back-end Engineering
as Should you use Userbase for your next static site? By feedproxy.google.com Published On :: Wed, 06 May 2020 08:00:00 -0400 During the winter 2020 Pointless Weekend, we built TrailBuddy (working app coming soon). Our team consisted of four developers, two project managers, two front-end developers, a digital-analyst, a UXer, and a designer. In about 48 hours, we took an idea from Jeremy Field’s head to a (mostly) working app. We broke up the project in two parts:. First, a back-end that crunches trail, weather, and soil data. That data is exposed via a GraphQL API for a web app to consume. While developers built the API, I built a static front end using Next.js. Famously, static front-ends don’t have a database, or a concept of “users.” A bit of functionality I wanted to add was saving favorite trails. I didn’t want to be hacky about it, I needed some way to add users and a database. I knew it’d be hard for the developers to set this up as part of the API, they had their hands full with all the #soil-soil-soil-soil-soil (a slack channel dedicated solely to figuring out our soil data problem—those were plentiful.) I had been looking for an excuse to use Userbase, and this seemed like as good a time as any. A textbook Userbase use case “When would I use it?” The Usebase site lists these reasons: If you want to build a web app without writing any backend code. If you never want to see your users' data. If you're tired of dealing with databases. If you want to radically simplify your GDPR compliance. And if you want to keep things really simple. This was a perfect fit for my problem. I didn’t want to write any more backend code for this. I didn’t want to see our user’s data, I don’t care to know anyone’s favorite trails.* A nice bonus to not having users in our backend was not having to worry about keeping their data safe. We don’t have their data at all, it’s end-to-end encrypted by Userbase. We can offer a reasonable amount of privacy for free (well for the price of using Userbase: $49 a year.) I am not tired of dealing with databases, but I’d rather not. I don’t think anyone doesn’t want to simplify their GDPR compliance. Finally, given our tight timeline I wanted nothing more than to keep things really simple. A sign up form that I didn't have to write a back-end for Using Userbase Userbase can be tried for free, so I set aside thirty minutes or so to do a quick proof of concept to make sure this would work out for us. I made an account and followed their Quickstart. Userbase is a fundamentally easy tool to use, but their quickstart is everything I’d want out of a quickstart: Written in the most vanilla way possible (just HTML and vanilla JS). This means I can adapt it to my needs, in this case React using Next.js Easy to follow, it does the most barebones tour of the functionality you can expect to get out of the SDK (software development kit.) In other words it is quick and it is a start It has a live demo and code samples you can download and run yourself It didn’t take long after that to integrate Userbase into our app with more help from their great docs. I debated whether to add code samples of what we did here, and I didn’t because any reader would be better off using the great quickstart and docs Userbase provides—they are that clear, and that good. Depending on your use case you’ll need to adapt the examples to your needs, for us the trickiest things were creating a top level authentication context to manage users in the app, and a custom hook to encapsulate all the logic for setting, updating, and deleting favourite trails in the app. Userbase’s SDK worked seamlessly for us. A log in form that I didn't have to write a back-end for Is Userbase for you? Maybe. I am definitely a fan, so much so that this blog post probably reads like an advert. Userbase saved me a ton of time in this project. It reminded me of “The All Powerful Front End Developer” talk by Chris Coyer. I don’t fully subscribe to all the ideas in that talk, but it is nice to have “serverless” tools like Userbase, and all the new JAMstacky things. There are limits to the Userbase serverless experience in terms of scale, and control. Obviously relying on a third party for something always carries some (probably small) risk—it’s worth noting Usebase includes a note on their pricing page that says “You can host it yourself always under your control, or we can run it for you for a full serverless experience”—Still, I wouldn’t hesitate this to use in future projects. One of the great things about Viget and Pointless Weekend is the opportunity to try new things. For me that was Next.js and Userbase for Trailbuddy. It doesn’t always work out (in fact this is my first pointless weekend where a risk hasn’t blown up in my face) but it is always fun. Getting to try out Userbase and beginning to think about how we may use it in the future made the weekend worthwhile for me, and it made my job on this project much more enjoyable. *I will write a future post about privacy conscious analytics in TrailBuddy when I’ve figured that out. I am looking into Fathom Analytics for that. Full Article Code Front-end Engineering
as "What is deceptive, especially in the West, is our assumption that repetitive and mindless jobs are..." By feedproxy.google.com Published On :: Wed, 12 Oct 2011 12:30:00 -0700 “What is deceptive, especially in the West, is our assumption that repetitive and mindless jobs are dehumanizing. On the other hand, the jobs that require us to use the abilities that are uniquely human, we assume to be humanizing. This is not necessarily true. The determining factor is not so much the nature of our jobs, but for whom they serve. ‘Burnout’ is a result of consuming yourself for something other than yourself. You could be burnt out for an abstract concept, ideal, or even nothing (predicament). You end up burning yourself as fuel for something or someone else. This is what feels dehumanizing. In repetitive physical jobs, you could burn out your body for something other than yourself. In creative jobs, you could burn out your soul. Either way, it would be dehumanizing. Completely mindless jobs and incessantly mindful jobs could both be harmful to us.” - Dsyke Suematsu from his white paper discussed at Why Ad People Burn Out. Full Article Dsyke Suematsu
as "In conceptual art the idea or concept is the most important aspect of the work. When an artist uses..." By feedproxy.google.com Published On :: Fri, 28 Oct 2011 12:13:00 -0700 “In conceptual art the idea or concept is the most important aspect of the work. When an artist uses a conceptual form of art, it means that all of the planning and decisions are made beforehand and the execution is a perfunctory affair. The idea becomes a machine that makes the art. This kind of art is not theoretical or illustrative of theories; it is intuitive, it is involved with all types of mental processes and it is purposeless. It is usually free from the dependence on the skill of the artist as a craftsman.” - Artist Sol Lewitt on conceptual art. Full Article
as Intel’s Parallel Extensions for JavaScript By feedproxy.google.com Published On :: Sat, 08 Oct 2011 17:38:07 +0000 Intel’s Parallel Extensions for JavaScript, code named River Trail, hooks into on-chip vector extensions to improve performance of Web applications. Details of Intel’s attempt to get on the JavaScript juggernaut emerged last month at its developer event. The prototype JavaScript extension offered by Intel is intended to allow JavaScript apps to take advantage of modern parallel Read the rest... Full Article Front Page JavaScript
as Adobe to forgo Flash plug-in for mobile devices By feedproxy.google.com Published On :: Sun, 13 Nov 2011 00:04:13 +0000 Earlier this week, Adobe VP and General Manager Danny Winokur disclosed that the company has concluded that HTML5 is ”the best solution for creating and deploying content in the browser across mobile platforms.” The company said it would stop building Flash to run on mobile browsers. In a blog post on the new focus of Read the rest... Full Article Flash Front Page html5
as Node.js – The objective is absolutely fast I/O By feedproxy.google.com Published On :: Sat, 31 Mar 2012 03:03:58 +0000 Node.js employs an event-driven architecture and a non-blocking I/O model, and it provides some blindingly fast performance to some types of data-intensive Web apps. It is about JavaScript on the server side. LinkedIn, Yahoo and eBay are among ardent Node.js users, and none other than Microsoft has discussed end-to-end JavaScript coverage on its Azure cloud. Read the rest... Full Article Front Page Node
as Vert.x ramblings: Asynchronous network, your time has come By feedproxy.google.com Published On :: Sat, 19 May 2012 02:00:24 +0000 With the debut of Vert.x, the asynchronous framework is reaching an inflection point, suggests Andrew Cholakian. With Vert.x, the software is packaged together in such a way as to be extremely practical, he states. For some JVM zealots, Vert.x may meet needs recently and apparently addressed by node.js. Vert.x is an asynchronous application server – Read the rest... Full Article Front Page Node
as Fat Fractal enters the BaaS fray By feedproxy.google.com Published On :: Thu, 27 Sep 2012 02:24:34 +0000 What has sometimes been described as mobile middleware has taken a new tack. Now, the idea of Backend as a Service (BaaS) has begun to take off in the mobile application development space. Proponents of BaaS say it helps developers easily build mobile apps, or any other applications connected to a cloud backend. Some of Read the rest... Full Article Front Page Mobile
as 5 Easy Tips for Finding the Perfect WordPress Theme By wphacks.com Published On :: Tue, 11 Feb 2020 08:00:00 +0000 Nothing is more frustrating than spending upwards of $50 on a theme for your WordPress site for it to not […] The post 5 Easy Tips for Finding the Perfect WordPress Theme appeared first on WPHacks. Full Article Beginners Guide web design wordpress theme
as METAL INJECTION LIVECAST #535 - Liddle' Ditch By feedproxy.google.com Published On :: Tue, 01 Oct 2019 23:53:36 +0000 We kick things off with Rob talking about his favorite albums of the year. We then discuss the shocking news... The post METAL INJECTION LIVECAST #535 - Liddle' Ditch appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #536 - Sinema with Chase from GATECREEPER By feedproxy.google.com Published On :: Tue, 08 Oct 2019 21:03:05 +0000 We kick things off talking about the Jewish holiday of Yom Kippur. We then discuss David D Rainman's recent request... The post METAL INJECTION LIVECAST #536 - Sinema with Chase from GATECREEPER appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #537 - Hootie and the No Fish with JINJER's Tatiana Shmayluk By feedproxy.google.com Published On :: Tue, 15 Oct 2019 23:57:50 +0000 We have a very special guest, Jinjer vocalist Tatiana Shmayluk called into the show. She talked about the band's upcoming... The post METAL INJECTION LIVECAST #537 - Hootie and the No Fish with JINJER's Tatiana Shmayluk appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #538 – Bush Did Mayhem with Special Guest Riki Rachtman By feedproxy.google.com Published On :: Wed, 23 Oct 2019 06:52:33 +0000 Former host of MTV Headbangers Ball, Riki Rachtman, called into the show to share memories of Headbangers Ball, working at... The post METAL INJECTION LIVECAST #538 – Bush Did Mayhem with Special Guest Riki Rachtman appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #539 - Hard Camera with Busted Open's Alex Metz By feedproxy.google.com Published On :: Wed, 30 Oct 2019 03:28:22 +0000 We're excited to welcome back Busted Open radio producer Alex Metz to the show, to talk about all things pro... The post METAL INJECTION LIVECAST #539 - Hard Camera with Busted Open's Alex Metz appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #540 - Eight Iota Ripper with Kenny Hickey of SILVERTOMB / TYPE O NEGATIVE By feedproxy.google.com Published On :: Wed, 06 Nov 2019 00:57:43 +0000 We kicked things off with an update on Rob's marijuana abstaining, or lack thereof. We then spend a good amount... The post METAL INJECTION LIVECAST #540 - Eight Iota Ripper with Kenny Hickey of SILVERTOMB / TYPE O NEGATIVE appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #541 - Thank You For Your Cervix with STRAY FROM THE PATH's Tom Williams By feedproxy.google.com Published On :: Wed, 13 Nov 2019 01:08:04 +0000 On this week's episode, we were joined by Stray From the Path guitarist Tom Williams. We talk about band's recently... The post METAL INJECTION LIVECAST #541 - Thank You For Your Cervix with STRAY FROM THE PATH's Tom Williams appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST Bonus Episode: Blake Harrison Interview By feedproxy.google.com Published On :: Fri, 15 Nov 2019 14:00:42 +0000 A special treat for Livecast fans, we are giving you a preview of the type of content you can expect... The post METAL INJECTION LIVECAST Bonus Episode: Blake Harrison Interview appeared first on Metal Injection. Full Article Metal Injection Livecast
as Squared Circle Pit #56 - Hot Topic's Joe Enriquez talks AEW, ECW and Thrash Metal By feedproxy.google.com Published On :: Fri, 15 Nov 2019 21:48:05 +0000 We're back and super excited to welcome the Hot Topic senior buyer Joe Enriquez to the show. Joe tells the... The post Squared Circle Pit #56 - Hot Topic's Joe Enriquez talks AEW, ECW and Thrash Metal appeared first on Metal Injection. Full Article SquaredCirclePit aew ecw hot topic wrestlemetal wwe
as METAL INJECTION LIVECAST #542 - Dull By Obb By feedproxy.google.com Published On :: Tue, 19 Nov 2019 21:44:05 +0000 We kick things off talking about the Motley Crue reunion. Darren shares a story from work. Rob talks about going... The post METAL INJECTION LIVECAST #542 - Dull By Obb appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #543 - Gong Solo By feedproxy.google.com Published On :: Tue, 26 Nov 2019 20:05:19 +0000 We kicked things off with Rob recapping his experience at the Tool concert. We then discussed Dave Mustaine's recent interview... The post METAL INJECTION LIVECAST #543 - Gong Solo appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #544 - 33% Drained By feedproxy.google.com Published On :: Wed, 04 Dec 2019 02:05:15 +0000 This week, we had a very special guest, our Livecastard of the Month, Eric, who actually signed up for our... The post METAL INJECTION LIVECAST #544 - 33% Drained appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #545 - Pre-Snatch with Axl Rosenberg By feedproxy.google.com Published On :: Wed, 11 Dec 2019 01:40:49 +0000 MetalSucks' Axl Rosenberg was back to sit in on the show. We kick things off talking about Chanukah and our... The post METAL INJECTION LIVECAST #545 - Pre-Snatch with Axl Rosenberg appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #546 - Grandma Smoothie By feedproxy.google.com Published On :: Tue, 17 Dec 2019 01:00:56 +0000 We kick things off talking about annoying holiday commercials. We discuss Christmas music this episode, and why Hanukkah lands on... The post METAL INJECTION LIVECAST #546 - Grandma Smoothie appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #547 - Crab Rangoomba By feedproxy.google.com Published On :: Thu, 26 Dec 2019 17:27:42 +0000 We kick things off talking about how we spent the holiday break and previewing the bonus Patreon episode coming next... The post METAL INJECTION LIVECAST #547 - Crab Rangoomba appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #548 - A Different Kind of Steamie By feedproxy.google.com Published On :: Fri, 03 Jan 2020 01:06:50 +0000 It's the first show of the new year and the new decade. We kick things off with a little math... The post METAL INJECTION LIVECAST #548 - A Different Kind of Steamie appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #549 - Loose Hot Dog By feedproxy.google.com Published On :: Wed, 08 Jan 2020 02:22:14 +0000 We kick things off with our New Year's resolutions. Noa explains her future vision board. We discuss climate change and... The post METAL INJECTION LIVECAST #549 - Loose Hot Dog appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #550 - Don Docking By feedproxy.google.com Published On :: Tue, 14 Jan 2020 21:31:20 +0000 We kick things off discussing our Tad's Patreon episode, and our fast food preferences. We then discuss the sad status... The post METAL INJECTION LIVECAST #550 - Don Docking appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #551 - Where Nickelback Shines with special guest Comedian Brian Posehn By feedproxy.google.com Published On :: Wed, 22 Jan 2020 03:00:18 +0000 We're so excited to have a huge guest on the show – big time comedian and noted metalhead, Brian Posehn,... The post METAL INJECTION LIVECAST #551 - Where Nickelback Shines with special guest Comedian Brian Posehn appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #552 - Penis II Society By feedproxy.google.com Published On :: Wed, 29 Jan 2020 01:33:01 +0000 What's with all the good drummers dying? We kick things off discussing the sad news. Noa discussed locking herself out... The post METAL INJECTION LIVECAST #552 - Penis II Society appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #553 - Full On Lip By feedproxy.google.com Published On :: Wed, 05 Feb 2020 02:03:04 +0000 What an eventful edition of the Metal Injection Livecast! We kick things off talking about the new Dave Mustaine memoir... The post METAL INJECTION LIVECAST #553 - Full On Lip appeared first on Metal Injection. Full Article Metal Injection Livecast
as METAL INJECTION LIVECAST #554 - Rob's Nolita By feedproxy.google.com Published On :: Wed, 12 Feb 2020 01:22:42 +0000 We kick things off talking about the Rage Against the Machine reunion. We then discuss the summer touring season and... The post METAL INJECTION LIVECAST #554 - Rob's Nolita appeared first on Metal Injection. Full Article Metal Injection Livecast
as ASPIRE: An Acronym for Better Web Practice By feedproxy.google.com Published On :: Tue, 08 Oct 2019 18:13:17 +0000 Sometimes interesting things happen on Twitter. Last week Scott Jehl proposed ASPIRE as an acronym for the practices we should follow as web designers and developers. From the resulting blog post: Great websites should aspire to be: Accessible to folks with varying cognitive and physical abilities and disabilities Secure and reliable for storing, manipulating, and transferring information Performant on average devices […] The post ASPIRE: An Acronym for Better Web Practice appeared first on MOR10. Full Article Ethics internet web
as 9 Convincing Reasons Why Designers Should Pursue Personal Projects By feedproxy.google.com Published On :: Thu, 16 Apr 2020 14:06:24 +0000 Web designers have skills and expertise that open up a whole world of possibilities. Many designers and developers choose to pursue personal projects in their own time, which can be a nice change of... Click through to read the rest of the story on the Vandelay Design Blog. Full Article Business Design Featured
as What Does Big Tech Know About You? Basically Everything By feedproxy.google.com Published On :: Fri, 11 Oct 2019 19:50:54 +0000 Big tech companies have been spying on us for years. This knowledge isn’t new information, but what could be surprising is exactly to what extent each company does it. Security Baron categories what data six of the biggest tech companies collect from you in The Data Big Companies Have On You infographic, and these are just the ones they admit to collecting on their own privacy pages!The seemingly endless stream of Facebook privacy scandals of late—including the latest involving users as young as 13 years old—may have you questioning how much the social network and other tech giants actually know about you.The folks at Security Baron examined the privacy policies of Facebook, Google, Apple, Twitter, Amazon, and Microsoft and put together a handy infographic showing the types of data each company admits to collecting. For Facebook and others, data is money. But just how much these tech giants actually know about you might be surprising.As you can see in the infographic below, Facebook is particularly data-hungry, even gathering information about your work, income level, race, religion, political views, and the ads you click in addition to more commonly collected data points such as your phone number, email address, location, and the type of devices you use."Facebook is unusually aggressive," Security Baron pointed out. "This data can be exploited by advertisers and (hopefully not nefarious) others."Twitter, in comparison, is "comparatively hands-off," the site notes. The microblogging service, for instance, doesn't collect your name, gender, or birthday (Facebook, Google, and Microsoft all do), but Twitter does know your phone number, email address, time zone, what videos you watch, and more.Google and Microsoft, meanwhile, are the other big players when it comes to collecting data."With Cortana listening in and Gmail seeing all of your emails, the ubiquitous nature of Google and Microsoft gives them access to an uncomfortably large amount of your information," Security Baron wrote.Check out the full infographic below to see what Facebook, Google, Apple, Twitter, Amazon, and Microsoft may know about you. For tips on securing your digital privacy, check our story, "Online Data Protection 101: Don't Let Big Tech Get Rich Off Your Info.This is a fairly simple infographic design using a comparison table. I think the use of the icons is particularly effective showing which of Google’s or Microsoft’s apps are collecting the data.Although the types of data are identified down the left side, I wish there was a way to identify the more sensitive types of data.Original article can be found at https://www.pcmag.com/ Full Article
as Drowning in Plastic By feedproxy.google.com Published On :: Wed, 29 Jan 2020 18:29:16 +0000 Simon Scarr and Marco Hernandez at Reuters created Drowning in Plastic, visualizing the amount of plastic bottles we consume, recycle and throw away every hour, day, month, year and decade.Around the world, almost 1 million plastic bottles are purchased every minute. As the environmental impact of that tide of plastic becomes a growing political issue, major packaged goods sellers and retailers are under pressure to cut the flow of the single-use bottles and containers that are clogging the world’s waterways.Plastic production has surged in the last 50 years, leading to widespread use of inexpensive disposable products that are having a devastating effect on the environment. Images of plastic debris-strewn beaches and dead animals with stomachs full of plastic have sparked outrage.Polyethylene terephthalate (PET) bottles are commonly used for soft drinks and mineral water, but can also be used in other household or personal care products. Data from Euromonitor International, shows that more than 480 billion of these bottles were sold last year alone. That’s almost 1 million every minute, as shown in the animation at the top of this page. The illustrations below show what that pile of plastic would look like if it was collected over a longer period of time. The visuals of massive piles of plastic bottles next to recognizable landmarks helps provide context and scale to readers.They also provided a nice Sankey Diagram showing the fate of most plastic bottles is to end up in the landfill. Found on FlowingData Full Article
as Beards and Face Masks from the CDC By feedproxy.google.com Published On :: Tue, 03 Mar 2020 16:09:29 +0000 Back in 2017, the U.S. Center for Disease Control and Prevention (CDC) published this infographic on the Facial Hairstyles and Filtering Facepiece Respirators to help men understand that beards can make facemasks ineffective. With the daily news about the Coronavirus (Covid-19) bordering on panic, this infographic has resurfaced, and is being widely republished.NOTE: The CDC does not recommend that people who are well wear a facemask to protect themselves from COVID-19.From the CDC FAQ:Does the CDC recommend the use of facemask to prevent COVID-19?CDC does not recommend that people who are well wear a facemask to protect themselves from respiratory illnesses, including COVID-19. You should only wear a mask if a healthcare professional recommends it. A facemask should be used by people who have COVID-19 and are showing symptoms. This is to protect others from the risk of getting infected. The use of facemasks also is crucial for health workers and other people who are taking care of someone infected with COVID-19 in close settings (at home or in a health care facility).From the original CDC blog post on November 2, 2017:The month of November is full of fun, interesting, and thought-provoking observances. November is National Raisin Bread Month, Historic Bridge Awareness Month, and Inspirational Role Models Month among so much more. November is also the host month to campaigns like No-Shave November and Movember. Campaigns such as these are working hard to raise money for important causes such as cancer research, education, and awareness. These increasingly popular campaigns are a great way to demonstrate your support … unless you need to wear a tight-fitting respirator for your job.Don’t despair! We will not completely ruin your plans to compete for facial hair bragging rights. But we’re going to have to get creative about it…I do love that the CDC is using infographics to spread valuable information in a fun, easy-to-digest way that informs people using visual explanations. They also specifically call out the designer of the beard and moustache vector art they used from ShutterStock, fredrisher Full Article
as Urging Multi-Pronged Effort to Halt Climate Crisis, Scientists Say Protecting World’s Forests as Vital as Cutting Emissions By feedproxy.google.com Published On :: Fri, 05 Oct 2018 19:38:06 +0000 By Julia Conley Common Dreams “Our message as scientists is simple: Our planet’s future climate is inextricably tied to the future of its forest.” With a new statement rejecting the notion that drastically curbing emissions alone is enough to curb … Continue reading → Full Article ET News Plants & Forests carbon capture carbon emissions climate scientist Deforestation forest conservation Global Warming