Instagram Scraper
instagram-scraper is a command-line application written in Python that scrapes and downloads an instagram user’s photos and videos. Use responsibly.
etalab. Demande de Valeur Foncière
Cette application est proposée par Etalab, département de la DINUM, et permet de visualiser les données DVF (demandes de valeurs foncières), correspondant aux mutations à titre onéreux réalisées les 5 dernières années. Les données DVF brutes sont téléchargeables sur le site https://www.data.gouv.fr depuis le 24 avril 2019 et sont produites par la direction générale des Finances publiques. Vous y trouverez des informations sur le cadre technique et légal de cette publication.
A quoi correspond le prix affiché ?
Il s’agit dun prix « net vendeur », c’est-à-dire ne comprenant ni frais d’agence immobilière, ni frais de notaire. En cas de vente de mobilier (une cuisine équipée par exemple) avec le bien immobilier, le montant de ce mobilier n’est pas compris dans le prix affiché. La TVA est incluse.
What is the difference between venv, pyvenv, pyenv, virtualenv, virtualenvwrapper, pipenv, etc?
PyPI packages not in the standard library:
virtualenv
is a very popular tool that creates isolated Python environments for Python libraries. If you’re not familiar with this tool, I highly recommend learning it, as it is a very useful tool, and I’ll be making comparisons to it for the rest of this answer.It works by installing a bunch of files in a directory (eg:
env/
), and then modifying thePATH
environment variable to prefix it with a custombin
directory (eg:env/bin/
). An exact copy of thepython
orpython3
binary is placed in this directory, but Python is programmed to look for libraries relative to its path first, in the environment directory. It’s not part of Python’s standard library, but is officially blessed by the PyPA (Python Packaging Authority). Once activated, you can install packages in the virtual environment usingpip
.pyenv
is used to isolate Python versions. For example, you may want to test your code against Python 2.7, 3.6, 3.7 and 3.8, so you’ll need a way to switch between them. Once activated, it prefixes thePATH
environment variable with~/.pyenv/shims
, where there are special files matching the Python commands (python
,pip
). These are not copies of the Python-shipped commands; they are special scripts that decide on the fly which version of Python to run based on thePYENV_VERSION
environment variable, or the.python-version
file, or the~/.pyenv/version
file.pyenv
also makes the process of downloading and installing multiple Python versions easier, using the commandpyenv install
.pyenv-virtualenv
is a plugin forpyenv
by the same author aspyenv
, to allow you to usepyenv
andvirtualenv
at the same time conveniently. However, if you’re using Python 3.3 or later,pyenv-virtualenv
will try to runpython -m venv
if it is available, instead ofvirtualenv
. You can usevirtualenv
andpyenv
together withoutpyenv-virtualenv
, if you don’t want the convenience features.virtualenvwrapper
is a set of extensions tovirtualenv
(see docs). It gives you commands likemkvirtualenv
,lssitepackages
, and especiallyworkon
for switching between differentvirtualenv
directories. This tool is especially useful if you want multiplevirtualenv
directories.pyenv-virtualenvwrapper
is a plugin forpyenv
by the same author aspyenv
, to conveniently integratevirtualenvwrapper
intopyenv
.pipenv
aims to combinePipfile
,pip
andvirtualenv
into one command on the command-line. Thevirtualenv
directory typically gets placed in~/.local/share/virtualenvs/XXX
, withXXX
being a hash of the path of the project directory. This is different fromvirtualenv
, where the directory is typically in the current working directory.pipenv
is meant to be used when developing Python applications (as opposed to libraries). There are alternatives topipenv
, such aspoetry
, which I won’t list here since this question is only about the packages that are similarly named.
Standard library:
pyvenv
is a script shipped with Python 3 but deprecated in Python 3.6 as it had problems (not to mention the confusing name). In Python 3.6+, the exact equivalent ispython3 -m venv
.venv
is a package shipped with Python 3, which you can run usingpython3 -m venv
(although for some reason some distros separate it out into a separate distro package, such aspython3-venv
on Ubuntu/Debian). It serves the same purpose asvirtualenv
, but only has a subset of its features (see a comparison here).virtualenv
continues to be more popular thanvenv
, especially since the former supports both Python 2 and 3.
Recommendation for beginners:
This is my personal recommendation for beginners: start by learning virtualenv
and pip
, tools which work with both Python 2 and 3 and in a variety of situations, and pick up other tools once you start needing them.
PrivacyTools. Encryption and tools to protect against global mass surveillance
You are being watched. Private and state-sponsored organizations are monitoring and recording your online activities. PrivacyTools provides services, tools and knowledge to protect your privacy against global mass surveillance.
Videoconferencing Guide
Due to COVID-19, many folks are evaluating or using videoconferencing or video chat. This chart compares several popular systems.
HackCurio: Decoding the cultures of hacking
Hack_Curio is a video portal into hackerdom that helps explain why hacking is one of the most important phenomena of global culture and politics in the late 20th and early 21st century.
They are people of different kinds: they are young and old, men, women, and nonbinary. They are not invisible, immaterial, hidden or cloaked except, of course, when they want to be. Hackers are funny, and scary; hackers are do-gooders, and assholes; they write code; hunt for bugs; tell the government to fuck off; land in jail (and even break out of jail); they work for three-letter agencies and expose them; they secure and break into our systems; invent new laws; bitch and rant; whistle, hum, and rap.
USB-C Introduction: What You Really Need to Know About the Connector Taking Over the World
Whereas USB-A connectors have to be plugged into their ports in a specific orientation, the symmetry of the oval shaped USB-C connector head, along with the pin configuration within it, allows the USB-C connector to be completely reversible…
With two-way charging, a USB-C port has the potential to either output power in order to charge a connected device, or input power from a connected device in order to charge itself.
Alt Mode allows USB-C ports to transfer data/video via multiple interfaces, including the increasingly popular DisplayPort video interface. USB-C ports which are able to transfer DisplayPort signals are either called USB-C DisplayPort or DP Alt Mode. They allow you to connect video sources (e.g. PCs, Blu-Ray players, etc.) and display devices (e.g. TVs, projectors, etc.) that support DisplayPort to each other via their USB-C ports to broadcast high-definition video.
Twenty Minutes With A Pinephone
The last thing I’m going to mention, and this is on me not Pine64 in any way, it caught me off guard that it’s running Manjaro. It shouldn’t have since it’s on the box and on the phone itself, but it did. I’ve been using Mobian with Phosh on the PineTab, and Manjaro with Phosh looks pretty much identical, but obviously tools like apt aren’t there. Tomorrow when I have the chance to look around a little bit more, I’m going to have to get myself in the Manjaro head space instead of a Debian based distro. I’m looking forward to it.
Splinternet
The splinternet (also referred to as cyber-balkanization or internet balkanization) is a characterization of the Internet as splintering and dividing due to various factors, such as technology, commerce, politics, nationalism, religion, and divergent national interests. « Powerful forces are threatening to balkanise it », writes the Economist weekly, and it may soon splinter along geographic and commercial boundaries. Countries such as China have erected what is termed a « Great Firewall », for political reasons, while other nations, such as the US and Australia, discuss plans to create a similar firewall to block child pornography or weapon-making instructions.
City Quitters Book
What does it mean to leave the city behind? Can the reality of living in the countryside fulfil our desire for a better, simpler, more creative life? My book sheds a light on what rural life can be like today, with all its joys and challenges, providing a fresh look at the people and scenes thriving outside urban spaces.
From experimental co-habitation in a renaissance castle to oversized artworks on a farm, City Quitters offers a global perspective on creative post-urban life: 22 stories from 12 countries and five continents, all based in places with fewer than 10,000 inhabitants.
France GeoJSON
Le projet Github france-geojson propose au format GeoJSON les cartes des régions, départements, arrondissements, cantons et communes de France (métropole et départements d’outre-mer) à partir des données publiées par l’IGN et l’INSEE.
Ce site permet de rechercher, visualiser et télécharger individuellement chacun de ces fichiers dans un format optimisé. Pour plus de détails ou pour accèder à la version non optimisée des tracés, cliquez sur le bouton ci-dessous.
La tecnología 5G no reducirá la brecha digital y podría incluso empeorarla
La industria de la telefonía móvil está en las puertas de una nueva revolución, solo que es una que tiene poco o nada que ver con incrementar el acceso o la asequibilidad. De hecho, ni siquiera está claro cuándo el 5G empezará a funcionar en alguna escala. Según la propia estimación de la GSMA: “La adopción global del 5G será solo de alrededor de un 16% en 2025”.
Un problema fundamental es que el 5G no está centrado en los humanos. La comunicación entre los seres humanos es solo una pequeña parte del paquete, como también lo es el acceso a la información y el diálogo entre pares. Como enfatizaba mi texto previo, hay un enfoque importante en facilitar las comunicaciones de máquina a máquina (“Internet de las Cosas o IoT”) y en convertir al 5G en una plataforma de distribución mediática para televisión HD, gaming, realidad virtual y otros. Cuando la gente ya no es el foco intrínseco del sistema de comunicación, entonces algo fundamental ha cambiado en la naturaleza y el propósito de la red.
La tecnología 5G es increíblemente cara de desplegar, incluso en condiciones urbanas óptimas. Las estaciones base son caras y se necesita muchas de ellas, y además requieren una costosa infraestructura de soporte para operar, como cableado de fibra óptica de alta capacidad. Esto tiene sentido si quieres crear una red muy densa que pueda movilizar muchos datos a mucha gente en un área pequeña. Esto no tiene sentido para áreas rurales, donde generalmente tienes que cubrir pocas personas en un área grande. Como sabemos de nuestra situación actual, a las redes móviles se les dificulta< operar de forma sustentable en ambientes rurales donde las densidades de población y el ingreso disponible de la gente son menores. Es por esto que los operadores tienden a evitar construir cualquier cosa en este tipo de lugares. Si los grandes operadores deciden no construir en nuevos lugares, el hecho de que sus licencias de espectro sean nacionales, significa que otros no podrán construir redes. Adicionalmente, el 5G en la mayoría de los casos, requiere que los operadores acceden a nuevas bandas espectrales, lo que no es barato. Los operadores de tecnología móvil están invirtiendo grandes sumas de dinero para acceder a espectro de ondas milimétricas para 5G, cuyo uso no es factible en áreas rurales, ya que estas frecuencias muy altas no son adecuadas para cubrir grandes áreas.
¿Quién realmente necesita el 5G?
Además de las noticias que relacionan el 5G con el covid-19 y otras ideas conspiranoicas, aún no está claro que este tipo de tecnología tenga afectaciones a la salud, ya que hay controversia en los estudios y no se ponen de acuerdo. Lo que sí es seguro es que el 5G significa más fabricación de dispositivos, antenas, cables, servidores y aparatos de todo tipo, que se construyen con minerales, que se extraen de minas, que afectan gravemente a la tierra y el territorio. También llevará aparejada mucha obsolescencia y renovación de equipos, y por tanto, mayores cantidades de residuos tecnológicos, que irán a parar a vertederos, ríos, costas, que también afectarán gravemente a la tierra y el territorio. Es decir, a muchas personas.
Y estar a la última en tecnología para acceder a estas redes ¿significará trabajar más para consumir más tecnología? ¿En qué condiciones laborales? Pues con el 5G también se prevé más automatización en puestos de la industria y los servicios. Suena a más precariedad, deslocalización, desempleo. ¿O vendría acompañado de dignificación de otros puestos de trabajo y rentas básicas?
Pero también con consecuencias geopolíticas, como hemos estado viendo con la pugna entre Estados Unidos y China. ¿Dentro de unos años habrá varios Internet, según los bloques geopolíticos? Todo apunta a ello.
Rusia otorga el permiso de residencia permanente a Edward Snowden
Kucherena ha explicado que el estadounidense pudo beneficiarse de este estatus gracias a los cambios de la legislación migratoria rusa aprobados en 2019. El abogado también señala que la solicitud fue presentada en abril del presente año.
JavaScript — from callbacks to async/await
Asynchronous requests will wait for a timer to finish or a request to respond while the rest of the code continues to execute. Then when the time is right a callback will spring these asynchronous requests into action.
Generators
One use for generators is that they allow you to have async code looking like sync.
Instead of returning with a return, generators have a yield statement. It stops the function execution until a .next is made for that function iteration. It is similar to .then promise that only executes when resolved comes back.
Async/Await
This method seems like a mix of generators with promises. You just have to tell your code what functions are to be async. And what part of the code will have to await for that promise to finish.
How to run async JavaScript functions in sequence or parallel
The async and await keywords are a great addition to Javascript. They make it easier to read (and write) code that runs asynchronously. That includes things like:
API calls (using fetch or a library like axios);
Timeouts (though these need a little extra work); or
Reading/writing files if you’re using NodeJS.
I’m going to assume you’re familiar with Promises and making a simple async/await call. Where it can get tricky is when we have a whole bunch of tasks in an array. You might run through the array expecting calls to run one-by-one. But instead, they run through all together and don’t wait for each individual item to resolve. Or, you might find yourself with the opposite problem. You run through your array in a loop, wanting them to run in parallel. But instead, it waits and does them one by one. And sometimes, you try something and it doesn’t work at all. The program just continues after the loop instead of waiting until the calls are all done. You end up wondering if there’s something you’re missing.
JavaScript Promises: An introduction
Promises simplify deferred and asynchronous computations. A promise represents an operation that hasn’t completed yet.
A promise can be:
fulfilled – The action relating to the promise succeeded
rejected – The action relating to the promise failed
pending – Hasn’t fulfilled or rejected yet
settled – Has fulfilled or rejected
Ajax — Async, Callback & Promise
Promise is used to overcome issues with multiple callbacks and provide better way to manage success and error conditions.
Promise is an object which is returned by the async function like ajax. Promise object has three states
pending :- means the async operation is going on.
resovled :- async operation is completed successfully.
rejected :- async operation is completed with error.
There are two parts using a promise object. Inside async function (Part1) and where its called (Part2).
Part1 — Inside Async function,
Promise object is created.
Async function returns the promise object
If async is done successfully, promise object is resolved by calling its resolve method.
If async is done with error, promise object is rejected by calling its rejected method.
Part2 — Outside Async function
Call the function and get the promise object
Attach success handler, error handler on the promise object using then method
Cross Domain Call
By Default, AJAX cannot make cross domain call, browser will reject the calls to the different domain. In order to make cross domain call there are two options
Using CORS
Using JSONP
Both the options requires some server changes. It cannot be done purely using javascript.
CORS is the new way to deal with cross origin AJAX request. github api are CORS enabled. In order to enable CORS, response should contain Access-Control-Allow-Origin header with the domain value or * to work for all. Github has set as *.
JSONP can also be used if CORS cannot be enabled by server or for old browsers. JSONP actually uses script tag to get the data from the server. Script is allowed to be fetched from any domain, So in JSONP, we need to create a script with the url as src and the server has to wrap the response in a callback function. Response sent by server is actually a javascript code which contains data inside a wrapper function. In JSONP, there is no ajax call being made.
Download link for Google Spreadsheets CSV export – with Multiple Sheets
Every document in Google Sheets supports the « Chart Tools datasource protocol », which is explained (in a rather haphazard way) in these articles:
« Creating a Chart from a Separate Spreadsheet »
« Query Language Reference »
« Implementing the Chart Tools Datasource Protocol »
To download a specific sheet as a CSV file, replace {key} with the document’s ID and {sheet_name} with the name of the sheet to export:
https://docs.google.com/spreadsheets/d/{key}/gviz/tq?tqx=out:csv&sheet={sheet_name}
The datasource protocol is quite flexible. Various other options include:
Response Format: Options include tqx=out:csv (CSV format), tqx=out:html (HTML table), and tqx=out:json (JSON data).
Export part of a sheet: Supply the range={range} option, where the range can be any valid range specifier, e.g. A1:C99 or B2:F.
Execute a SQL query: Supply the tq={query} option, such as tq=SELECT a, b, (d+e)*2 WHERE c < 100 AND x = 'yes'. Export textual data: Supply the headers=0 option in case your fields contain textual data, otherwise they might be cut out during export.
How to bind .hover() to dynamically created “li” elemtent? [duplicate]
…you need to use .on() delegated event handling with mouseenter and mouseleave and an event handler for each.
Noob’s Guide to Linux Audio: ALSA, OSS, and Pulse Audio Explained
…ALSA is responsible for giving a voice to all modern Linux distributions. It’s actually part of the Linux kernel itself, providing audio functionality to the rest of the system via an application programming interface (API) for sound card device drivers.
Users typically interact with ALSA using alsamixer, a graphical mixer program that can be used to configure sound settings and adjust the volume of individual channels. Alsamixer runs in the terminal, and you can invoke it just by typing its name. One particularly useful keyboard command is activated by hitting the M key. This command toggles channel muting, and it’s a fairly common fix to many questions posted on Linux discussion boards.
…the user-facing layer of the Linux audio system in most modern distributions is called PulseAudio.
The job of PulseAudio is to pass sound data between your applications and your hardware, directing sounds coming from ALSA to various output destinations, such as your computer speakers or headphones. That’s why it’s commonly referred to as a sound server.
If you want to control PulseAudio directly, instead of interacting with it through a volume control widget or panel of some sorts, you can install PulseAudio Volume Control (called pavucontrol in most package repositories).
If you feel that you have no use for the features provided by PulseAudio, you can either use pure ALSA or replace it with a different sound server.
RegExr. Learn, build, & test Regular Expressions
RegExr is an online tool to learn, build, & test Regular Expressions (RegEx / RegExp).
Open and collaborative design processes – Meta-Design, ontologies and platforms within the Maker Movement
The emergence of the Maker Movement has taken place in the context of a design practice and research that is now open, peer-to-peer, diffuse, distributed, decentralized; activity-based; meta-designed; ontologically-defined and defining; locally-bounded but globally-networked and community-centered. For many years the author participated and worked in the Maker Movement, with a special focus on its usage of digital platforms and digital fabrication tools for collaboratively designing and manufacturing digital and physical artifacts as Open Design projects. The author’s main focus in practice and research as a meta-designer was in understanding how can participants in distributed systems collaboratively work together through tools and platforms for the designing and managing of collaborative processes. The main research question of this dissertation is: How can we support and integrate the research and practice of meta-designers in analyzing, designing and sharing open and collaborative design and making processes within open, peer-to-peer and distributed systems?
The focus evolved and changed with three main phases: from facilitating collaborative design processes with 1) guidelines for a generic design approach, process and tools, to the use of 2) design tools and workshops that encode the methodology to developing 3) a digital ontology and the related digital platform. In the latter, the ontology for describing, documenting, sharing and designing collaborative design processes was developed as part of a broader conceptual framework, OpenMetaDesign, that builds the ontology on top of concepts describing design processes, and encodes it in a digital platform. The role of the ontology is to support the practice and research with a Research through Design approach that works not just on understanding the practice but also informing it, navigating it and continuously redesigning it. This dissertation is an exploration of the possible role, practice and profile of meta-designers that work in facilitating distributed, open and collaborative design and making processes in the Maker Movement. As a result, it provides insights on the practice and artifacts of the author and also a strategy and tools for applying the same exploration to other meta-designers. Following a Research through Design framework for bridging practice and research, the dissertation redefines Meta-Design in the Maker Movement as the design of digital ontologies of design processes as design material. Ultimately, the practice of designing a Metadata Ontology for Ontological Design through the design of bits (digital environments) and atoms (physical artifacts) with and for Open, Peer-to-Peer, Diffuse, Distributed and Decentralized Systems. Finally, it redefines meta-designers as designers, facilitators, participants, developers and researchers embedded in social networks that define their activities, profiles and boundaries for the ontologies they design.
CKWEB. Estación radio
Estación del Idartes para la experimentación, formación, circulación, debate, creación de redes y difusión de contenidos culturales.
radiolibre.cc
_la radio como lugar común_
Using Promises
Essentially, a promise is a returned object to which you attach callbacks, instead of passing callbacks into a function.
A common need is to execute two or more asynchronous operations back to back, where each subsequent operation starts when the previous operation succeeds, with the result from the previous step. We accomplish this by creating a promise chain.
Promises solve a fundamental flaw with the callback pyramid of doom, by catching all errors, even thrown exceptions and programming errors. This is essential for functional composition of asynchronous operations.
What’s the difference between Promise and AJAX?
An Ajax call is a specific type of asynchronous operation. You can make an Ajax call either with a traditional callback using the XMLHttpRequest interface or you can make an Ajax call (in modern browsers), using a promise with the fetch() interface.
What’s the Difference Between GPT and MBR When Partitioning a Drive?
MBR does have its limitations. For starters, MBR only works with disks up to 2 TB in size. MBR also only supports up to four primary partitions—if you want more, you have to make one of your primary partitions an “extended partition” and create logical partitions inside it. This is a silly little hack and shouldn’t be necessary.
GPT stands for GUID Partition Table. It’s a new standard that’s gradually replacing MBR. It’s associated with UEFI, which replaces the clunky old BIOS with something more modern. GPT, in turn, replaces the clunky old MBR partitioning system with something more modern. It’s called GUID Partition Table because every partition on your drive has a “globally unique identifier,” or GUID—a random string so long that every GPT partition on earth likely has its own unique identifier.
GPT doesn’t suffer from MBR’s limits. GPT-based drives can be much larger, with size limits dependent on the operating system and its file systems. GPT also allows for a nearly unlimited number of partitions.
On an MBR disk, the partitioning and boot data is stored in one place. If this data is overwritten or corrupted, you’re in trouble. In contrast, GPT stores multiple copies of this data across the disk, so it’s much more robust and can recover if the data is corrupted.
GPT also stores cyclic redundancy check (CRC) values to check that its data is intact. If the data is corrupted, GPT can notice the problem and attempt to recover the damaged data from another location on the disk. MBR had no way of knowing if its data was corrupted—you’d only see there was a problem when the boot process failed or your drive’s partitions vanished.
Why We Should Set the $content_width Variable in WordPress Themes
It is a theme feature which helps us to control our content width for images, videos and embeds. If you used _s starter theme or browsed through any official WordPress theme, you saw it in the functions.php. In today’s responsive design, it is not the most necessary tool for the images but still useful because of the other media formats.
Activismo y feminismos en la ciudad (España). Una charla con Ricardo Amaste
En esta charla repasamos varios proyectos del colectivo Colaborabora, una cooperativa que diseña entornos colaborativos. Trabajan en participación ciudadana, arte contextual y diseño trans. Qué es el diseño trans? Bueno, de eso vamos a aprender durante esta entrevista. Y de muchas cosas más como economía feminista y como hacer para poder hacer partícipes a comunidades más vulnerables de un proceso participativo en la ciudad. Te adelantamos, que no hay fórmulas mágicas, todo es cuestión de dedicarle tiempo a lo que creemos y apostar a un trabajo hecho con cuidado y corazón. Una entrevista que te va a inspirar y dejar pensando como hacer las cosas de una manera diferente, porque según Ricardo, cambiando los comos podemos llegar a cambiar los ques. Por eso ellos diseñan muchas herramientas, como la guía incompleta para colaborar. Cambiar las cosas es un problema de diseño del que podemos aprender.
The Tyranny of Structurelessness
During the years in which the women’s liberation movement has been taking shape, a great emphasis has been placed on what are called leaderless, structureless groups as the main — if not sole — organizational form of the movement. The source of this idea was a natural reaction against the over-structured society in which most of us found ourselves, and the inevitable control this gave others over our lives, and the continual elitism of the Left and similar groups among those who were supposedly fighting this overstructuredness.
The idea of « structurelessness, » however, has moved from a healthy counter to those tendencies to becoming a goddess in its own right. The idea is as little examined as the term is much used, but it has become an intrinsic and unquestioned part of women’s liberation ideology. For the early development of the movement this did not much matter. It early defined its main goal, and its main method, as consciousness-raising, and the « structureless » rap group was an excellent means to this end. The looseness and informality of it encouraged participation in discussion, and its often supportive atmosphere elicited personal insight. If nothing more concrete than personal insight ever resulted from these groups, that did not much matter, because their purpose did not really extend beyond this.
HTML5 Video Events and API
This page demonstrates the new HTML5 video element, its media API, and the media events. Play, pause, and seek in the entire video, change the volume, mute, change the playback rate (including going into negative values).
Movimiento Freeman
« Freemen » creen que el derecho escrito es un contrato, y que las personas son libres de someterse a ella, o escoger vivir bajo lo que ellos llaman leyes « naturales », o ley « común ». Según su teoría, las leyes naturales sólo requieren que los individuos no perjudiquen a otros, no dañen la propiedad de los demás, y no utilicen « fraude o malicia » en los contratos. Dicen que todas las personas existen en dos formas: – su cuerpo físico y su persona jurídica. Esta última está representada por su certificado de nacimiento, algunos freeman reclaman que este último se limita exclusivamente a la partida de nacimiento. Según esta teoría, se crea un « hombre de paja » cuando se emite un certificado de nacimiento, y que esta es la entidad que está sujeta al derecho escrito. El cuerpo físico se conoce por un nombre ligeramente diferente, por ejemplo « Juan de la familia Smith », en lugar de « John Smith ».
CSS filter generator to convert from black to target hex color
The goal was to be able to create custom style sheets and allow for the coloring of icons
git – getting ALL previous version of a specific file/folder
The script would:
– extract all file versions to /tmp/all_versions_exported
– take 1 argument – relative path to the file inside git repo
– give result filenames numeric prefix (sortable)
– mention inspected filename in result files (to tell apples apart from oranges:)
– mention commit date in the result filename (see output example below)
– not create empty result files
Librem laptop hardware quality? Qubes usability/battery life?
Huh, any idea which ODM?
That’s not something we disclose, and to my knowledge nobody managed to figure out for our existing lineup. Regardless, these aren’t white-box devices we are simply repackaging. We work with an ODM to make customizations to a reference board/design, including (but not limited to) keyboard layout/feel, hardware kill switches, display type, hardware TPM, display type, chassis materials, etc. All of which add significant NRE cost (which we have to pay upfront)
NVMe vs. SATA: Which SSD Technology Is Faster?
Take, for example, the 1 TB Samsung 860 Pro, a 2.5-inch SSD with a maximum sequential read speed of 560 megabytes per second (MB/s). Its successor, the NVMe-based 960 Pro, is more than six times faster than that, with a top speed of 3,500 MB/s.
Edward Snowden in Russian exile: ‘you have to be ready to stand for something’
Edward Snowden has spent the last six years living in exile in Russia and has now decided to publish his memoirs, Permanent Record. In the book he reflects on his life leading up to the biggest leak of top secret documents in history, and the impact this had on his relationship with his partner, Lindsay Mills. The Guardian’s Ewen MacAskill, who helped break Snowden’s story in 2013, has been given exclusive access to meet him.
Pangea, Internet ètic i solidari
Pangea es el proveedor de servicios de Internet para entidades de la Asociación Pangea – Coordinadora Comunicación Para la Cooperación.. La entidad y el proyecto « Pangea » se crearon en 1993, con el fin de hacer llegar Internet y las nuevas tecnologías de la información y la comunicación a las asociaciones, ONG, personas y colectivos sin ánimo de lucro La misión de Pangea es promover el uso estratégico de las redes de comunicación y las tecnologías de la información y comunicación (TIC) para el desarrollo y la justicia social y convertirse en una herramienta que ayude a cumplir los objetivos de colectivos sociales, organizaciones y movimientos sociales. Así como, promover que las organizaciones y movimientos sociales compartan información, conocimiento y recursos técnicos para el uso efectivo y estratégico de las TIC, especialmente de Internet, de forma sostenible y respetuosa con la diversidad y los valores de la cultura y sociedad local y global. Pangea está dirigida por una Junta que marca las principales líneas de trabajo de la entidad.
Actualmente Pangea está formada por más de 600 socios y socias
About David Joy
David Joy is the author of the Edgar nominated novel Where All Light Tends To Go (Putnam, 2015), as well as the novels The Weight Of This World (Putnam, 2017) and The Line That Held Us (Putnam, 2018). He is also the author of the memoir Growing Gills: A Fly Fisherman’s Journey (Bright Mountain Books, 2011), which was a finalist for the Reed Environmental Writing Award and the Ragan Old North State Award.
Joy lives in the North Carolina mountains.