FarkasCity

Feed

Read the latest blogs from FarkasCity.

from qaqland

软件的作用:读取仓库的 .git 文件,生成包含本项目信息的静态网页,以方便在Cloudflare Pages 等静态托管平台发布。即类似 CGit 但并非动态网站。

最早是在即刻,2022 年 7 月份发布了这个想法。可以 self-hosted 的 Git 托管网页提供者,大的有 GitLab、Gitea、SourceHut 等,他们提供了完整的体验,而且功能超出预期;功能上和我想法比较接近的有 GitWeb、CGit,它们稍稍偏极客

我希望它能有这些 Features:

  • 现代设计及交互
  • 高性能静态网页
  • 轻松、简易部署

虽然我前端水平不行,但是好看一点应该还可以;信息读取有 libgit2cgit 两种模式选择;配置的话,主要是本地仓库的绝对路径,一个文本文件就行,cron 或者 hook 可以让外部程序来进行。

【终止】2023 年 3 月更新:用的人不会多,毕竟像我这样子买不起不用备案服务器的人是少数,且少数人中并不介意使用 GitHub,有服务器的人选择就更多了。个人的时间是有限的,我无法保证后续的活跃维护及完备健壮性。文拉法辛项目稳定后再来看

:D

 
阅读更多

from DJ Chase’s Blog

Links rot. It’s unfortunate, but it’s just a part of the web. Content disappears and links rot; if you don’t host your own images, then you can’t guarantee that your images will always appear. In this situation, alt-text can be the difference between your piece still making sense and it being completely useless. This is because many browsers show the alt-text with the missing image icon, so descriptive alt-text can make sure your audience still gets the necessary information.

If the alt-text doesn’t load for you, try viewing this article on my site.

Examples

Quiz question

Here is how this question is supposed to look like:

Alice, Bob, and Carlos go to a restaurant and pay a total of $38.50. Bob does not eat beef. Alice payed less than Carlos, Carlos payed more than Bob, and Alice payed more than Bob. What did each person order at the restaurant?

Unfortunately, the link to the image no longer works, leaving this question completely unanswerable:

Alice, Bob, and Carlos go to a restaurant and pay a total of $38.50. Bob does not eat beef. Alice payed less than Carlos, Carlos payed more than Bob, and Alice payed more than Bob. What did each person order at the restaurant?

If the person who made the quiz provided alt-text, then the quiz would still be answerable (albeit erroneously formatted):

Alice, Bob, and Carlos go to a restaurant and pay a total of $38.50. Bob does not eat beef. Alice payed less than Carlos, Carlos payed more than Bob, and Alice payed nore than Bob. What did each person order at the restaurant?

Graphs

Math can be nearly impossible sometimes without graphing. Imagine if you prepared a document with graphs but didn’t include alt-text! Here are some examples of how graphs can be understood through alt-text.

Suppose we add the line g(x) = |x − 2|. Where would this line intersect with f(x)?


Suppose we add the line g(x) = |x − 2|. Where would this line intersect with f(x)?


Suppose we add the line g(x) = |x − 2|. Where would this line intersect with f(x)?

If you use images as links, then not using alt-text means they’re completely unreadable if the image fails to load or if a user relies on a screenreader.

Northern Essex Community College COVID-19 Safety Measures



Northern Essex Community College COVID-19 Safety Measures

General

Even if your images don’t contain critical information, you still probably put them there for a reason. It’d be nice if people still had an idea of the images if they don’t load.

Did you know that Massachusetts residents who qualify for food stamps (SNAP) can get an additional $40 per person per household each month to spend on fresh fruits and vegetables?


Did you know that Massachusetts residents who qualify for food stamps (SNAP) can get an additional $40 per person per household each month to spend on fresh fruits and vegetables?


Did you know that Massachusetts residents who qualify for food stamps (SNAP) can get an additional $40 per person per household each month to spend on fresh fruits and vegetables?


#Prescriptive

© DJ Chase 2023-02-28. Licensed under the Academic Free License (AFL 3.0).

 
Read more...

from qaqland

昨晚刷到 B 站有评测红米 12c 的视频,想起来我也用过类似的产品。现在我也不怎么去在意这些东西了,记忆在不断流失于是记录一下过去。

初中

家里据说有个座机,不过我完全没有一点印象。最早对这种东西的印象是家长的手持电话,他们会把旧的留在家里联系用。我不懂那些功能,但不外乎短信电话,最好不过还有内置小游戏。

  • 步步高音乐手机?能拍照录视频,游戏里比较喜欢弯水管的那个,每次可以选择水管调整方向,环成一个圈就得分!
  • 按键手感很棒系统快快的三星 Anycall?横板妈祖、宝石消消乐

初三记得当时有魅族 mx3 大战小米 3,我在魅族 mx3 17.99 bug 价那天快 100 大洋买了小米的金属耳机,从此对小米音质一直有偏见。

高中

高二我短暂的有过智能手机 vivo x5m,音质不错,手机也很纤薄,就是处理器高通骁龙 615 拉跨,稍稍使用就会发热,就 2000 多的售价我现在觉得不划算,有点难过。但是当时母说可以给我买,便被冲昏了头,但是又机不可失失不再来,也是思考之后的唯一可行的行为。

明面上,我有台 100 多的诺基亚,这台诺基亚一般放在家里与家长联络用。它的按键很硬,比买到的手撕牛肉干差不了多少,大概定位上就是给老人的,但是字又很小,比不了当时的 21 克老年手机。但是系统非常完善,我只找到一个 bug,日常的功能,从音乐收音机,到手电筒闹钟记事本,一应俱全。我喜欢她的音乐,可以用内存卡听歌,数独游戏不好玩,但是屏幕的点对点像素风格与主题色彩非常讨喜,现在都觉得很好看。说到闹钟,强迫性的只有一次一个闹钟设置,于是我每天中午和晚上都要手动设置一次,给我的生活增加了一点点乐趣(?)

背地里我在攒钱,我不知道我能怎么办。我有天看到说 Lumia 要倒闭,我去学校旁的文具店让老板代购,但是当时那家店的最后一台 Lumia638 还是卖掉了,特别想拥有个黄色的。最后攒的钱买了 iPod touch6,小小的也很可爱,现在也倒闭了。

高三去天津参加冬令营,给幼小的我造成了不小的冲击,不仅仅是扫码的共享单车,大城市里的同学们有智能手机可以用,有的甚至还有笔记本电脑,我带着习题册去的。

高中这几年大概是手机的黄金期,从来没奢望过 1999 高端机型,但只是红米 1s 就觉得很高级,不只是系统但也是后盖、呼吸灯,后续的红米 note2 比 note1 好看太多,小米 4c 的构造也长在我 xp 上;也有在微机课上看了魅蓝 note2 的发布会直播,mback 惊为天人,后来有魅蓝 metal 深得我心;锤子坚果好多好多颜色,在那么多颜色里纠结了很久很久,虽然 799 也不贵,但终究最后一个我也没有。

大学

  • 红米 note4x 用了一年,不是个好手机,拍照很差对比不如红米 4x,整体是我体验过最差的,各方面都很不行。
  • iPhone se 是红米 note4x 期间在酷安买的,精致的小手机,但是每时每刻我都觉得它在发热即将爆炸(可能热是我的幻想),不得不挂了闲鱼。虽然后来又入手了一个整体不如它的 se。
  • 黑莓不知道多少,系统有亮点但不如安卓甚至 wp 好用,好的系统键盘与触屏的输入交互应该是协调的,虚拟机做的还不如 xwayland,倒闭预料之内。
  • 红米 4a 有很多系统可以刷,但是真要主力使用可能顶不住压力。
  • 华为荣耀 10 用了两年,拍照没有宣传的好,当时还挺像原生安卓的,讨厌刘海屏,其它没什么好说的。
  • iPhone se 2020 两周,系统让我感到窒息(可能是这时候焦虑症比较严重),很快就原价卖了。
  • 红米 7a、红米 8a 体验大概几个月,这俩没啥区别,都是高通 439 + type-c + 32 位系统,不同在于后者是水滴屏,都比我想象中的好用。
  • 红米 k30i 用了快两年后置很多摄像头,就我而言可以都去掉只留一个。后面用着开始屏幕误触乱点,电池也充不上电。

现在

在用 moto g71s,当然是网上很多人说的垃圾,对我而言不支持 pd 或者无线充电有点可惜,NFC 红外可要可不要如果有就好了,除了系统桌面有时会有图标消失的 bug 外,整体都挺好的。原生安卓谷歌框架纯净无广告,都是花钱买不到的东西。

更好的东西出现,从前的美好就会吃灰,失去就会怀念,拥有又觉得心烦意乱,有的东西真的错过就没有了,不只是物件错过,更是那种上下文关系或者叫环境不再。全文没有什么价值,就当作分析自己吧。

 
阅读更多

from GUTIMETEO

Máxima: 19,1ºC Mínima: -3,8ºC Media: 5,0ºC Lluvia: 26,6 mm. Mes de Febrero seco y frío, muchos días hemos tenido con temperaturas mínimas bajas, la nieve nos visito dos días, el segundo dejando 2 cms. de depósito. La mínima de -3,8 es la segunda más baja de la serie, la medía de temperaturas es de las más bajas de la serie. Solo ha faltado que lloviese más, a ver Marzo.

 
Leer más...

from The View From Here

If there’s anything scarier than public speaking, it’s private speaking. Not the quiet conversations you have with friends but the prospect of being thrown into a room of strangers and having to get out with any shred of dignity intact. Some people have no trouble making new friends, but introverted and anti-social writers seem to have a harder time than average. The normal strategies of hiding behind a potted plant all evening, or orbiting the room clutching a beverage like a life-ring while refusing to make eye contact may leave you feeling like you missed out on opportunities.

How do people do that schmooze thing without feeling icky? 

It takes a bit of mental jujitsu.

First, you have to understand that everybody in the room is there for the same reason. You’re there because you’re passionate enough about the subject matter to have found the time and resources to attend. Just by being there, you’ve got common ground with every other attendee. Just being there automatically makes you one of the cool kids.

Second, you need to check your excuses at the door. Even introverts can get satisfaction from sharing ideas they’re passionate about. Leave the “I’ve got nothing to talk about” excuse and the “Who’d want to talk to me?” excuse at the door.

Third, the hardest room is your first one. Not everybody in the room is a first timer, but everybody in that room was a first timer once. Most of them remember it. Newcomers are always welcome. When it’s your turn to meet the newcomers, welcome them. If nothing else, it gives you someone to talk to.

A few simple ideas can help even the shyest individual over the threshold.

Have a goal or two.

I believe too many people struggle because they have goals that place too much emphasis on measurable return on investment. They want to pitch their stories to three agents or get an acquisitions editor to request a manuscript. While those are certainly valid goals, for somebody trying to learn the art of the schmooze these goals put Olympic-sized pressure on Wading Pool skills.

My goals for every convention I attend—writer oriented, fan oriented, whatever—are always the same. Meet three interesting people and take home one actionable idea. I don’t limit myself to what I think “interesting” means or what kind of action I want to take. Sometimes I meet interesting people in the lobby or sitting beside me in the audience at a panel. Sometimes the ideas are time management or dealing with stress. Occasionally I learn about new tools, gain insight into new techniques, or find writers I want to learn more about. I can’t achieve any of those goals unless I get out there and meet people.

Listen more than you talk.

Probably the most common advice given, but too often not followed.

Sometimes conversations get forced on you at organized dinners. Nothing's worse than having to take a seat with a table full of strangers. Simple courtesy can ease the conversation into starting on its own. Take a seat, smile at the person on your left/right, offer your hand, and say, “Hi, I’m <Your Name>.” Or whatever your name is. Typically, that triggers a response around the table. This also works at meet-and-greet events, BarCons, session audiences, and other situations where you’re in a room full of strangers all wearing the same badges. If the conversation lags, you can always ask “Who came the farthest to get here?” Chances are nobody will know so you’ll have to compare notes. After that the conversations generally sort themselves out.

The thing about listening is that you always have something to do. If you’re focused on listening, you’re not thinking about what to do with your hands or whether your hair is sticking out at an odd angle. You’re thinking about what the other person is saying and maybe asking questions about it. Listening has the added advantage of making you seem smart, even when you don’t think you are. Do it regularly, and the odds are good that you’ll become smarter over time.

Wallflowers Unite

There will always be somebody who’s off to the side, out of the path, and standing alone. The art of the schmooze is making sure you’re not that person. Find the wallflower or the person standing or sitting alone and introduce yourself. You’ll each find you have a lot in common and both of you will be able to practice the art.

Breaking In

What about when you’re trying to join a conversation that’s already going on? A lot of people feel like they might be intruding if the conversation is already in full swing. Sometimes you might be, but more typically, there’s always room for one more smiling face. Stepping into the gap—often literally—with a smile and a nod usually works. If the conversation doesn’t stop, chances are you’re just as welcome as anybody else. This is a great opportunity for you to practice listening. Asking a pertinent question at the next pause in the festivities works very well to cement your place in the conversation.

Semper Paratus

Awkward silence is awkward, but a little preparation can push awkwardness to the backseat. Questions like “So, what are you reading these days?” or “How are you dealing with social media?” often yield interesting responses. Personally, I avoid questions like “What do you do?” or “What are do you write?” The first sets up a “you are what you do” vibe and the second is most likely to get a pat elevator pitch.

A bit of noodling time with your favorite professional online sources can add currency to your conversation as well.

Finally, when that awkward feeling just won’t leave, have an exit line of your own ready. A simple “Nice to meet you. I need to circulate a little. Enjoy the convention” lets you wander off without feeling like you’ve stepped on anybody’s puppy. You can change it up with “I need another drink” or “I need to find my partner.” Even “I need to find the little writer’s room” can give you the exit you need without falling into TMI.

Have fun

That probably sounds a bit like “Hey, they’ll only hang you once. Enjoy the gallows.” This is one place where you actually can “fake it til you make it.” Smile at people. Meet their eyes and nod. Extend a hand and introduce yourself. Before you know it, the person you met in the first session on the first day will show up and you can compare notes. Or the person you had breakfast with will invite you to eat dinner with them. Take a few selfies with other attendees. Ask for cards from interesting people. By the time you have to leave, you’ll find you’ve actually had more fun than you thought.

After all, these people all cared enough to arrange their lives to be in that space with you, even when they didn’t know you’d be there. The least you can do is make it worth their while.


Up Next: Abandonment Issues

What else is there to see in The View From Here? Check the Table of Contents for other essays about writing, marketing, and publishing.

 
Read more...

from GUTIMETEO

Máxima: 16,6ºC Mínima: -4,0ºC Media: 4,3ºC Lluvia: 87,4 mm. Mes de Enero lluvioso y fresco, como tiene que ser. Bastantes días hemos tenido con temperaturas máximas muy bajas, la nieve nos visito dos días, el segundo dejando 5 cms. de depósito. Se ha portado este mes, la medía de temperaturas es la 2ª más baja de la serie. Que siga Febrero los pasos de Enero.

 
Leer más...

from DJ Chase’s Blog

This step was considerably harder than the last, but the end result turned out to be pretty simple. Here’s how it works:

  • I use matrix-commander on smirkingface to listen for new messages.
  • For each message, I send it to my phone via email, from an address specific to that room.
  • Upon recieving an email from my phone on ~team, I send the body to the Matrix room specified in the to address.

That’s really it. I did encounter some hurdles, though:

  • My phone provider’s gateway marked many of the addresses I tried to send from as spam.
  • matrix-commander ocassionally randomly stops.

I fixed these by mapping Matrix room IDs to human-readable IDs such as “room-number-7”, and by putting the program in a while loop (don’t look at me like that — I made this because I promised a friend, it doesn’t need to be high quality).

On smirkingface

matrix2email

#!/bin/sh


TO_ADDR="enter email address here"
FROM_USER="enter sender email address local part here"
FROM_DOMAIN="enter sender email address domain here"

unescape() {
        printf '%s\n' "$1" | sed -E '
                s/\\"/"/g;
                s/\\t/\t/g;
                s/\\r/\r/g;
                s/\\n/\n/g;
                s/\\e/\\/g
        '
}

# room_avatar_url has to be last bc it has a good chance of being null
matrix-commander -l -o json --download-media --listen-self \
| jq --raw-output --unbuffered '
        . | [
                .source.type,
                .source.content.body,
                .source.content.msgtype,
                .room.room_id,
                (.room.users | length),
                .room_display_name,
                .sender_nick,
                .room.room_avatar_url
        ] | @tsv' \
| while IFS=$'\t\n' read -r event body mime room users name sender icon; do
        [ "$event" = "m.room.message" ] || continue


        if grep -Eq "^$room " ~matrix/rooms; then
                addr="$(grep -E "^$room " ~matrix/rooms \
                        | head -n 1 | cut -d' ' -f2)"
        else
                # map mxid to something that doesn’t look like spam
                touch ~matrix/rooms
                num="$(wc -l <~matrix/rooms)"
                addr="${FROM_USER}+room.no.${num}@${FROM_DOMAIN}"
                printf '%s %s\n' "$room" "$addr" >>~matrix/rooms

                # inform ~team so it can add a ~/.forward file
                printf 'room.no.%s\n' "$num" \
                | mailx -s "New forward file" \
                        -r "matrix@${FROM_DOMAIN}" \
                        "matrix@${FROM_DOMAIN}"

                # inform user so they can name the chat and etc
                file="$(mktemp)"
                trap "rm -rf '$file'" INT TERM HUP EXIT
                matrix-commander --download "$icon" --file-name "$file"
                unescape "$(
                        printf '%s ' "“$name” ($room) is <$addr>"
                        printf '\n'
                )" \
                | mailx -s "" \
                        -r "${FROM_USER}+matrix@${FROM_DOMAIN}" \
                        -S "sendcharsets=utf-8,UTF-8" \
                        -a "$file" \
                        "$TO_ADDR"
                rm "$file"
        fi

        file="$body"
        [ "$users" -gt 2 ] && body="<$sender> $body"


        if [ "$mime" = "m.text" ] || [ "$mime" = "m.notice" ] \
                || [ "$mime" = "text/plain" ] \
                || [ "$mime" = "text/markdown" ]
        then
                unescape "$body" | mailx -s "" \
                        -r "$addr" \
                        -S "sendcharsets=utf-8,UTF-8" \
                        "$TO_ADDR"
        else
                echo "$file" >~matrix/file-name
                unescape "$body" | mailx -s "" \
                        -r "$addr" \
                        -S "sendcharsets=utf-8,UTF-8" \
                        -a ~matrix/media/"$(unescape "$file")" \
                        "$TO_ADDR"
                rm ~matrix/media/"$(unescape "$file")"
        fi
done

restart.sh

#!/bin/sh

while :; do
        ./matrix2email
done

email2matrix

#!/bin/sh

to="$1"
body="$(cat)"

matrix-commander \
        --room "$(grep -F "$to" ~matrix/rooms | cut -d " " -f 1)" \
        --message "$body"

On ~team

#!/bin/sh


# POSIX sh lacks $HOSTNAME and `hostname`
hostname() {
        set -- $(grep -F "$(cat /etc/hostname)" /etc/hosts)
        printf '%s\n' "$2"
}

OTHER_MACHINE="enter fqdn here"
email="$(cat)"
from="$(
        printf '%s\n' "$email" \
        | grep -Em1 "^From:" \
        | cut -d : -f 2- \
        | sed -E 's/^[[:blank:]]*(.*<)?//g; s/>?[[:blank:]]*$//g'
)"
to="$(
        printf '%s\n' "$email" \
        | grep -Em1 "^To:" \
        | cut -d : -f 2- \
        | sed -E 's/^[[:blank:]]*(.*<)?//g; s/>?[[:blank:]]*$//g'
)"
split="$(printf '%s\n' "$email" | grep -En "^$" | cut -d : -f 1)"
body="$(printf '%s\n' "$email" | tail -n +"$((split + 1))")"

if [ "$from" = "matrix@$(hostname)" ]; then
        ln ~/.forward+matrix ~/".forward+matrix+$body"
else
        printf '%s\n' "$body" \
        | ssh "matrix@$OTHER_MACHINE" -t /usr/local/share/matrix/email2matrix "$to"
fi

#MatrixMMSEmail #HacksAndProjects


© DJ Chase, 2023. Licensed under the Academic Free License (AFL 3.0).

 
Read more...

from The View From Here

The publishing landscape is littered with misinformation. Sometimes it helps to see what the terms we use actually mean. Some of these will be familiar, but some might make you see the process from a different perspective.

Literally “the right to copy” a work. The person or entity that “holds the copyright” is recognized as the legitimate agent to distribute and collect revenues of a work. In the U.S. the first instantiation of a work sets the copyright to its creator. For writers, that means a completed first draft is covered by copyright as is every subsequent draft.

A copyright may be sold – some markets require the transfer of copyright from the creator to the producer – or licensed. A license permits a producer to create and distribute copies of the work for some limited amount of time without requiring the creator to give up their intellectual property forever.

Copyright covers the work for any form of production including

  1. Primary right – the right to produce the product
  2. Derivative rights – the right to produce work created from or extending the primary like sequels and spin offs
  3. Subsidiary rights – the right to produce work in different forms and media like audio or merchandise

Copyright registration creates a third-party validation of copyright for a particular work and creator. In the U.S. registration offers additional legal remedies for cases of infringement beyond those granted on creation. The creator must have the wherewithal to pursue those remedies in court for them to be of value. In the U.S. registration does not provide extra protection, only additional paths for remedy.

Key Point: As soon as you make it, you own it.

Publisher:

The person or entity that presents your Intellectual Property (“the work”) to the public. For writers, this usually means the person/entity that uploads your files and collects the revenues – if any – from the sales.

Key Point: The publisher makes the work available to a public.

Traditional publishing:

A process by which creators agree to license their work to a company or individual for production and distribution. The company collects the revenues and dispenses the creators' share to them.

The process for publishing traditionally usually goes through a query period followed – with luck – a negotiation process to establish the terms of the relationship, leading to a contract. It doesn't matter if you're dealing with a short story for a magazine, or a novel for individual publication. You could be working through an agent to get to the publisher, but the same query process occurs. Twice if you use an agent because you need to convince the agent to represent you, then the agent has to convince a publisher to consider the work.

The company takes on the duties of production and publication – creating a product that is suitable to the purpose and making it available to the public. They perform these duties according to the strict terms of the contract. The creator bears the onus of knowing and understanding those terms before signing.

Companies involved in traditional publishing include but are not limited by:

  1. The Bigs – The largest global publishing conglomerates. They operate multiple companies each of which may have multiple imprints serving discrete market niches. Typically agents control access to these publishers.
  2. Independent (Small) Press – Publishers that remain unaffiliated with the Bigs including various short story markets like zines. Some small presses represent significant market share in their niches. Writers who use these publishers are sometimes referred to as “independent writers” (See also: Self-Publishing).
  3. Vanity Press – Publishers who charge the creator for production and publication expenses. They depend on creator fees rather than sales revenue for their income.
  4. Scams – A subset of vanity presses present themselves as “self-publishing companies” or “hybrid presses.” They usually disguise their fees as “risk sharing” or “service fees.” Like other vanity presses, they make most of their revenue from the fees authors pay. I classify them as scams because they hide their role as vanity presses behind the language.

Key Point: You cannot choose traditional publishing. You can only choose to pursue it. A publisher has to choose you. (I don't remember who I heard this from. If was you, thanks!)

Note: Vanity Presses and Scams have very low barriers to entry in terms of the works they'll accept, but you must be willing and able to pay them for the privilege.

Query:

In order to be considered for traditional publication, the creator must submit an application to an appropriate publisher. In the trade, that's a “query.” The query must conform to the specific guidelines posted by the publisher. Failure to follow said guidelines is grounds for rejection. The process is made more complicated by use of the terms like “Standard Manuscript Format” for which no universal standards exist.

The typical query cycle consists of:

  1. Determining an appropriate market for the work
  2. Finding a target publisher (or agent) that serves that market
  3. Preparing the query documentation that conforms to that publishers requirements
  4. Waiting for the response.
  5. If the publisher (or agent) rejects the query, the cycle begins again at step 1 or the creator gives up trying to be selected for traditional publication for that particular work.
  6. If the query gets accepted, the query cycle ends.

Key Point: The only limits to iterating steps 1 through 5 involve the number of appropriate markets for the work and the creator's willingness to continue the cycle. This seemingly unending cycle is sometimes referred to as the “query-go-round” which can only end when you stop the ride or catch the metaphorical brass ring.

Rejection:

The query process necessary in Traditional Publishing frequently results in the publisher (or agent) declining to publish (or represent) the queried work. The publisher (or agent) seldom states the reason(s) for declining.

Typical reasons:

  1. The submission violated the company's submission guidelines. Ex: Failing to format the manuscript with proper paragraph indents, not including a 500 word synopsis, or submitting more pages than required.
  2. The submission does not meet the company's content area. Ex: Submitting a romance novel to a horror publisher, a novella to a short story magazine market, or adult litfic to a kitlit publisher.
  3. The submission is too similar to a work recently signed by the publisher. Ex: They just licensed Lil Piece Of Your Heart cozy murder mystery so rejected your Fifty Ways To Leave Your Liver cozy murder mystery.
  4. The submission has no clear genre category. Without a genre label, the publisher doesn't know where to put your book in their catalog. Ex: Your gritty, dystopian retelling of Peter Rabbit, set-in-space whodunnit as written by Jane Austin.
  5. The slush reader had a bad morning and hasn't time to put up with your nonsense.
  6. The writing. Ex: Kludgy language usage, lack of punctuation, surplus punctuation, pacing, profanity or lack of same, story that doesn't conform to accepted structure, characters that have no/too much/too little personality, etc.

Key Point: The rejection may have little to nothing to do with the story itself. A successful query consists of the right work to the right company at the right time in the right format. While the creator can control most of those aspects, fate spins the wheel on every submission.

Negotiation:

After the publisher agrees to accept a query, the creator and producer may enter into a period of negotiation to establish the terms of their agreement. In some cases the negotiation starts and ends with “take it of leave it” when it comes to what the two parties will accept. Many markets – like short stories and poetry – use simple enough contract language (and small enough compensation) that legal assistance may not be necessary or even advised. For contracts involving longer works and substantial amounts of money, it behooves the creator to involve legal counsel specializing in intellectual property when dealing with extended contract terms.

Following the contract negotiation, an additional “negotiation” period may occur when the publisher requires the creator to make changes to the work prior to publication. Note that the creator's right to refuse these changes may be curtailed – even negated – by the terms of the established contract.

Key Point: Getting accepted is just the first step toward a publishing contract. The next steps carry greater risks.

Royalty:

The amount a publisher owes the creator for the sale of a unit of work. For short works, this might be a flat sum on acceptance as in an article or story for a magazine. For longer works, this might be expressed as a percentage of the cover price or gross profit.

Key Point: Royalty is your share of the revenue earned when the work sells.

Advance Payments:

Some traditional publishers offer an “advance” or “advance payment” as part of their contract. The terms usually specify how that payment gets made – often a third on signing, a third on their acceptance of a final manuscript, a third on publication. Depending on the publisher's production cycle, those three payments may be separated by weeks, if not months.

Before any royalties accrue to the writer, the book must “earn out” – that is, accumulate in royalties an amount equal to or greater than the advance. In effect, repaying the advance payment to the publisher with sales before the publisher will make additional payments to the writer.

Key Point: A large advance might signify the publisher is willing to support a title with more efforts in sales and promotion or higher production values. It also means the book must earn that much more in accrued royalties before the writer gets paid again.

Self-Publishing:

The creator takes the roles of the publisher, becoming producer and distributor. The creator underwrites the production of the work and collects all the revenues. In the simplest cases, the writer and publisher are the same entity so gross profit becomes revenue without consideration of a royalty split.

Self-published authors sometimes use the term “indie” or “independent author” to describe themselves because they publish through the smallest of independent presses – one that produces and distributes only their own work.

Key Point: You can choose to be a self-published author.

Production

The process of preparing a work for publication. This might be done in-house by the publisher or contracted out to specialists like audiobook producers.

For writers this generally means 1. Editing – Some level of review for story structure, continuity, format, and correct spelling and punctuation prior to layout. 2. Cover selection – Acquiring the appropriate artwork for the publication. The nature of the cover varies by form (ex. Short stories or poetry may only have an evocative graphic or none at all). 3. Layout – Designing how the final product will look, putting the manuscript into the appropriate format to support that look, and combining it with the cover art. This may include acquiring and assigning ISBNs where applicable, creation of bar codes, or other necessary features required by the market.

Key Point: Production consists of translating a manuscript into forms suitable for a reader's consumption.

Distribution

The process of putting the work into the pubic sphere. For writers this means sending the book to bookstores, making it available to readers. The publisher handles this process using the appropriate technologies for the market.

For paper-based products, publishers sometimes use catalogs and/or sales representatives to inform bookstore buyers of a title's availability. Online stores generally use print-on-demand technology to produce each book as it's ordered and shipping it directly to the reader, by-passing warehousing and intermediate shipping.

For digital products, publishers need only make the appropriately formatted file available to the bookstore's system. Readers purchase and download the files.

Key Point: Distribution is a necessary but insufficient condition for sales. The book may be in the store, but that's no guarantee that a reader will buy it.

TLDR

  1. A publisher presents a work to the public.
  2. A traditional publisher chooses what works to present, sometimes with the intervention of an agent. They are responsible for making the work available to bookstores that – in turn – make the books available to readers.
  3. A self-publisher generally makes their book available to readers directly through digital storefronts, through alternate modes like crowd funding, and physical sales via dealer rooms and bookstores.

Once the publisher distributes the work, the process becomes one governed by sales and promotion – a completely separate set of tasks but which get bundled into the publishing umbrella because the publisher needs to recoup publication costs before paying the writer.

Re-phrased: Publication is easy. Getting paid is a different process.


Up Next: Art of the Schmooze

What else is there to see in The View From Here? Check the Table of Contents for other essays about writing, marketing, and publishing.

 
Read more...

from Esquelario

Desde que comenzó el año todos los días saludo en mi cuenta en mastodon con una misteriosa frase:

Hoy es Martes 2° de Q1 (temporada de invierno boreal) de 2023. #calendario

En realidad se trata de una propuesta de calendario fijo que paso a explicaros.

Motivación

La motivación viene porque, en sociedades regidas por el Calendario Gregoriano tenemos una doble forma de medir el paso de los días: una es con referencia a la semana (lunes, martes... domingo) y otra con referencia al mes (5 de enero, 18 de agosto, etc). El tema no sería tan grave si el número de días del año fuera un múltiplo de 7, que es el número de días por semana, porque entonces tendríamos cada año la misma pauta de coincidencia de días de semana con días del mes, aunque fuera un poco complicada.

Pero resulta que no es así: $365 = 7\times 52 + 1$, es decir sobra un día, por lo que al año siguiente la referencia semanal se desacopla de la mensual —los mismos días del mes caen un día de la semana más tarde— y ya tenemos el lío montado, porque los eventos habituales están marcados en fechas mensuales fijas (comienzo/fin de curso, festivos, etc.) y, sin embargo, nuestro ritmo de vida está organizado según el ciclo semanal de 7 días. Tras un año bisiesto el desacople es de 2 días.

El caso es que no somos conscientes del desbarajuste porque lo tenemos muy asumido, pero todos los años hay que reprogramar esas fechas clave para que tengan el mejor acomodo dentro de la semana; así, un comienzo de curso universitario puede empezar del 1 al 7 de octubre, según el día de semana que convenga, pero cada año en un día del mes distinto, si queremos conservar la conveniencia del día de la semana. Los días festivos tradicionales asociados a día-mes concretos (esto es, casi todos los que no son domingo) permanecen en su sitio y pueden caer en domingo, lo que trastoca la organización de días festivos extra.

Calendario inmutable

Existen varias propuestas para solventar este problema mediante la adopción de un nuevo sistema de calendario fijo o inmutable —esto es, que no cambia la distribución de días de semana— pero todas ellas pasan por dos preceptos:

  1. Conservar la semana de 7 días. Esto es importante porque el verdadero ciclo de duración superior al día, en las sociedades regidas por el Calendario Gregoriano, es la semana de 7 días. Toda nuestra actividad gira alrededor del ciclo semanal y es importante conservarlo, no como ocurrió con el Calendario Republicano, que, en plena fiebre decimalizadora, estableció semanas de 10 días, que es una disrupción muy fuerte respecto al ciclo de 7 días.
  2. Establecer el año como un periodo de tiempo de 52 semanas, más 1 día extra (2, en años bisiestos) que queda(n) fuera del encaje de semanas/meses. Técnicamente esto se llama día intercalar. Esto ya lo hizo el Calendario Republicano con los días complementarios.
  3. Comenzar el año con el actual 1 de enero. Otras alternativas conllevarían demasiados costes de transición y tampoco hay alternativa fácil no etnocentrista. Por ejemplo, en el hemisferio norte el comienzo de año más natural sería aproximadamente con el comienzo del otoño boreal, pero eso chocaría con los hábitos del hemisferio sur, cuyo comienzo de año más natural sería al comienzo del otoño austral (primavera boreal).

Por ejemplo, existe una propuesta de fijar 12 meses agrupados de tres en tres con duraciones (31, 30, 30) días. El día sobrante se añade al final y no forma parte de ninguna semana: en algún momento después de un domingo no sigue un lunes, sino ese día extra. Los años bisiestos tienen un día más con esa característica.

Otra propuesta es el Calendario Fijo Internacional, que contempla 13 meses de 4 semanas. Los meses se llaman igual que los actuales con el añadido del mes «sol» entre junio y julio (maldita la gracia que les haría a los habitantes del hemisferio sur que el invierno les caiga en el mes sol). Podéis leer más detalles en el enlace.

Mi propuesta de calendario

En mi propuesta de calendario conservo las características antes mencionadas de otras propuestas de calendario fijo. Particularmente, la semana de 7 días y la existencia de días intercalares.

Trimestres en lugar de meses

Lo más relevante de mi propuesta es que no hay meses: las semanas se distribuyen en 4 bloques, trimestres, o temporadas, cada uno de 13 semanas. La justificación es que el mes de 30-31 días rompe la lógica del ciclo de 7 días semanal y, además, no tiene las características de un ciclo verdadero. Es cierto que es un concepto importante para nuestra vida civil (las letras vencen a fin de mes, la nómina se cobra a fin de mes, los alquileres se pagan a principio de mes, etc) y, por tanto, es conveniente definirlo dentro de este nuevo esquema.

Pero el verdadero superciclo es el trimestre o temporada: el curso escolar comienza en la temporada de otoño, y recomienza en la de invierno tras una pausa (Navidad / fin de año); tras otra pausa (Pascua), se reanuda durante la temporada de primavera y acaba con el comienzo de la temporada de verano. Y el curso escolar arrastra la vida de toda la sociedad, no sólo la de las familas con hijos: el curso universitario es parecido, las vacaciones laborales largas tienen lugar en los periodos de descanso escolar, las programaciones de las televisiones se modifican en cada temporada, etc.

Las temporadas están numeradas como {1, 2, 3, 4}, opcionalmente añadiendo el prefijo Q del inglés quarter (a su vez, la voz inglesa proviene del latín, lo que asegura un mayor alcance internacional). La temporada Q1 va desde el 1 de enero al 2 de abril, Q2 desde el 3 de abril al 2 de julio, Q3 del 3 de julio al 1 de octubre y Q4 del 2 de octubre al 31 de diciembre. Además, pueden recibir el nombre de la estación astronómica en la que se desarrollan mayoritariamente; por ejemplo Q1 sería «temporada de invierno boreal» o bien «temporada de verano austral».

Las fechas se indican con 3 números más el año en curso, empezando por el año, temporada (1 a 4), semana (2 cifras, 01 a 13), día de la semana (1 a 7). Por ejemplo, el 17 de enero sería 2023-1-03-2 o también 2023-Q1-03-2. O, más informalmente, Martes 3º de Q1, 2023 (nótese que el lunes es el primer día de la semana en esta propuesta, no el domingo como en los países anglosajones, de acuerdo con la directiva ISO 8601). En el sistema actual se usan sólo 2 números para indicar una fecha: mes y día del mes; pero eso resulta engañoso porque casi siempre resulta relevante saber qué día de la semana representa esa fecha, con lo que finalmente es necesario aportar ese tercer dato.

Días intercalares

El día intercalar anual se inserta a principio de año. Por definición de día intercalar, no es un día de la semana, sino externo a ella; se le puede llamar Día de Año Nuevo, o Día 0, y se insertaría entre el 13º Domingo de Q4 del año anterior (31 de diciembre) y el 1º Lunes de Q1 del año en curso, y ocuparía el sitio del actual 1 de enero. Para identificarlo dentro del sistema de fechas, se le puede asignar el número 0 de la 1ª semana de Q1; es como si la primera semana del año tuviera, excepcionalmente, 8 días. Así, el 1 de enero se consignaría como Q1-01-0.

Para que no se disturbe demasiado el ritmo semanal de 7 días, este día sería festivo (bueno, el 1 de enero ya lo es ¿no?).

Dado que en este año 2023 tiene lugar que el día de Año Nuevo es domingo y, por tanto, el primer lunes es día 2, es el año más apropiado para hacer este experimento.

Año bisiesto

El día intercalar del año bisiesto, que se podría llamar simplemente Día Bisiesto, debería estar lo más cerca posible del 29 de febrero actual, para minimizar costes de transición. Como el 28 de febrero es 9º Martes de Q1, entonces la primera solución que a uno se le ocurre para el día bisiesto es colocar un día intercalar entre el Martes 9º y el Miércoles 9º. Pero quedaría muy raro interrumpir una semana con un día extra que, para evitar otras disfunciones, debería ser festivo.

La solución más natural incluye ponerlo al principio de la semana, como «día 0» de esa semana al igual que el Día de Año Nuevo. Y, para mayor oportunidad, en lugar de dejarlo como «día 0» de las semanas 9ª o 10ª de Q1, se podría retrasar como «día 0» de la 1ª semana de Q2, o sea, justo al principio del cuatrimestre de primavera boreal, con el mismo papel que el Día de Año Nuevo en Q1. Y así, se sumaría a las vacaciones de cambio de trimestre (a todo esto, a ver si conseguimos independizar esas vacaciones de laa de la Pascua católica...).

En resumen, los años bisiestos tendrían un día Q2-01-0, que no es ni Lunes, Martes... Domingo, y que haría una semana de 8 días al principio del trimestre de primavera boreal.

Convivencia con el calendario de siempre

Este calendario tiene un buen acople con el calendario de siempre, en el sentido es que hay una correspondencia de días de mes actuales con días del nuevo calendario.

El único problema es en los años bisiestos que, o bien hay unos 30 días que cambian de correspondencia, o bien suprimimos el 29 de febrero y sólo habría un día —el Día Bisiesto, Q2-01-0— que no tendría correspondencia.

¿Qué hacemos con los meses?

Es posible que, una vez acostumbrados al sistema, muchas de las convenciones civiles actuales que ocurren mensualmente pasen a ocurrir o semanalmente o trimestralmente. Pero entretanto conviene definir los eventos mensuales y el periodo del mes.

Para los eventos mensuales se pueden fijar días dentro del trimestre. Por ejemplo, los días de pago de nómina pueden fijarse en el 5º Lunes, 9º Miércoles y 13º Viernes. O los días de pago de alquiler en: 1º Viernes, 6º Lunes y 10º Miércoles. Y así con todo.

Para definir periodos mensuales se puede fijar 1 mes como un periodo de 31 días y 2 meses como un periodo de 61 días (sin contar días intercalares que pueda haber entremedias). Para periodos mayores se cuentan trimestres y días. Por ejemplo, un periodo de 8 meses serían 2 trimestres y 2 meses (61 días). Supongamos que un trámite tiene una caducidad de 8 meses y lo realizas el 9º Martes de Q1; entonces se cuentan 2 trimestres (9º Martes de Q3) y se suman 61 días (7 semanas y 5 días) lo que lleva al 3º Sábado de Q4 como fecha límite.

Conclusión

  • He presentado una propuesta de calendario fijo que prescinde del concepto de «mes» en favor del de «semana» y «temporada».
  • Las fechas se presentan con 3 números.
  • El día de la semana es uno de los números de los que forma parte la fecha.
  • Hay 1 día intercalar (2, en los años bisiestos).

Puedes comentar este artículo en el hilo que he abierto en Mastodon.

 
Leer más...

from blogggy bloggggy

Why Omnivore's dillema is a bad novel

It is a really bad novel. It barely concerns the life of it's protaganist who speaks in first person. Thats a blantanly stupid idea to make I know exactly what Mike Pole Anne was thinking when he was writing this. He was thinking that he was going to be cool and postmodern and Ironic. It's really not a great satire, since it is so boring and overdone.

I should probably start with a brief summary of it's plot. I should start that way, but I cannot because it lacks a plot. Plot is nessarily for a good novel. Absurdist plotless fiction and such Postmodernist ideas as instead of writing a novel, writing something that says the word “a novel” on the cover and mostly focuses on the corn industry. The idea of a novel that focuses on the corn industry is stupid. No one cares about the corn industry. Also more importantly the corn industry is barely an industry in real life. It would be intresting if this novel was more of a exploration of a real life thing, like what James Joyce does in his fiction with the city Dublin. Though unfortunately it is not this, it is more akin to a low-class and pornographic fantasy novel such as Harry Potter by Hatsune Miku, or Mason and Dixon by Thomas Pynchon.

Of course the real life corn industry is a happy and joyous place. Most Corn is made in Liberty Kansas by the Corn family. This book actually claims that corn is grown out of the ground, which is hillarious. As a friend of Sarah Corn, I had actually seen THE TRUTH. Corn is grown on trees in real life. This book is basically full of lies. It also claims that Mcdonalds has corn in it. This is really silly. Mcdonalds is mostly made of piss and shit. I've been there before and I would know.

I also diss like the postmodern elements in which it inserts it's author as the protaginist. As an enemy of post-modernism, I am offended that it would break the fourth rule of writing like that.

As the fourth rule clearly states in THE 16 LAWS OF ART by Isaac Newton: “do not make yourself the protaganist. It is arrogant.” -Newton.

Other post-modern elements include. Having children, having written more than three novels, and lying.

This is a really bad novel. 3 out of a possible 68 stars.

 
Read more...

from The View From Here

The problem for most indies – particularly new ones – isn't producing a book. Once you've gotten a full draft written, the rest is mechanics. Cover art is cheap. Editing is relatively cheap. Conversion from wordprocessor to ebook and even paper is cheap.

Everything is cheap mechanics except for one aspect. 

Sales and Promotion. What the kids are calling “marketing” today.

It's the one thing every indie needs to tribe up to handle because yelling in the woods alone is – well – lonely. It's also counter productive. It scares away readers, attracts predators, and exhausts the author. 

It doesn't have to be like that. 

We've known the market is a conversation since the ClueTrain[1] left the station in 1999. We've known about the importance of being remarkable since the Purple Cow[2] mooed in 2003.

But too many authors still operate as if ad buys and exposure gets sales. As if a 5-star Amazon review opens the flood gates to wonga while a 1-star one kills your career. As if there are only so many readers in the world and they're all taken.

You don't need a co-op to produce a book and you don't need a company to network. People have been networking since the tribal days and it's only gotten easier now that we don't need drummers to bash out our messages on the jungle drums. 

I've said it before and I'll probably have to say it again:

Face to the audience. Peers at your back.

“I don't have any audience.” – everybody starts at zero. 

“I don't have a network.” – build one.

“I don't have time to build a network.” – you're reading this post aren't you?

You've already had more than enough time to work on a network. It takes a few minutes a week to lay the groundwork. You can spend more, if you're having fun.  If you're not having fun, you're doing it wrong. 

“But don't I need friends and views and likes and followers?” – Not really.

A few connections to start is usually enough. You don't need to be everywhere and probably shouldn't be. 

What you need is some work that people can buy – or at least get for free. You can't promote the book you're going to write. More is better. A blog where you publish your short stories is fine, but that's not where the juice is. Newsletter “reader magnets” only work for readers who already know you. Get your work listed in a marketplace. Even Wattpad, if you must, but there are better alternatives. Give people a reason to look at you before you stand up and start yelling “Hey! Look at me!”

What you need is to stop thinking like you're on Madmen and start thinking like the artist you are. One with a global marketplace and a global reach. One where the distribution channels funnel you directly to eager customers in their pajamas around the world with just a few key clicks. 

What you need are a few people who are in the trenches with you. If you're reading this, you're already part of a network. Mastodon has a great community of supportive writers – along with a few people who didn't get the memo about trying to sell pork chops to a butcher.

If you want to be part of the community of letters, stand up and claim your node.


See also: – Face To Your AudienceWhat Is Marketing?


Up Next: Publishing: A Glossary ...


1. ClueTrain Manifesto: http://www.cluetrain.com/book/95-theses.html

2. Purple Cow by Seth Godin   http://www.amazon.com/Purple-Cow-New-Transform-Remarkable-ebook/dp/B00316UMS0


 
Read more...

from The View From Here

One of the drums I thump regularly has to do with discovery and the paths readers take to find new fiction to read.

Lots of social marketing people will try to convince you that you must blog regularly, that quality content will draw readers to your website, and that you must use good Search Engine Optimization (SEO) techniques to funnel readers to your books.

I'm not one of them. 

My stance is that readers aren't looking for fiction on Google. No sufficiently granular search string exists that will turn up your fiction on a generalized search of the web and most readers know it. Just like they don't look for mangoes at the hardware store.

They go to the bookstore to shop for books. These days, maybe GoodReads or StoryGraph for clues, if their favorite authors haven't released new work lately. They might ask on social media to see if any of their virtual friends have suggestions.

Later, once they've read your work, then they might look you up on Google. They might want to see what else you're doing, or who you are when you're at home. They might want to see if you've got any DVD extras on your site, or just find out who you're reading. There are lots of reasons why a reader might want to look you up on the web. 

They're all predicated on discovering you somewhere else first. The two largest factors for readers deciding to read a book involve knowing the author and liking their work, or a recommendation from a trusted friend. (See also: Polly Wanna Cracker)

Eric Schmidt seems to agree with me noting that – in search – Google's biggest competitor is Amazon.[1]

While it's true you can find mangoes on Amazon and a lot of the searches on the 'Zon are not for books, the lesson for fiction authors is clear.

Discovery does not happen with Google. SEO is how to fool people looking for one thing to find you instead. Trying to establish SEO to lure new readers to your work via your website is like looking for mangoes at the hardware store.


See also: A Few Notes on Discoverability


1. https://www.businessinsider.com/eric-schmidt-says-amazon-is-googles-biggest-search-competitor-2014-10

 
Read more...

from dkmarsh

Multiple Venues

To the extent that I might not only harbor ideas for resolutions, but commit them (however tentatively) to print, I will own up to the intention of writing more this year. I was going to say, “writing more coherently,” but honestly, I haven't on an ongoing basis been producing enough material for coherence to really be a possibility. Unless my end product were a collection of assorted epigrams, anagrams, and pithy one-liners debunking this or that party high on some hog or other.

Yes, the ironic tweet, the birthday limerick, the snappy rejoinder to an overhyped claim—these have been my bread and butter: takes that are brief even by internet standards. I churn out a lot of them; some are pretty damn good! Were I a character in my own novel, I might land a job in some sort of surreal fortune cookie factory, composing cryptic aphorisms capable of provoking brilliant insights on the part of those consuming them... but later, after intermittent mulling—a kind of time-release koan.

In the past, I've tended to view “writing more” as requiring a narrower focus—typically, working on a single piece until it's done (rarely achieved!)—but I now think this is completely wrong-headed, allowing as it does for the grinding to a halt which inevitably occurs somewhere along the way to effectively shut down all production. No, my revised philosophy is that I'll write in as many venues as I can, and over time, we'll see what seems to work.

That's enough for now—this is exhausting!

 
Read more...

from BlogCiclismo

Tour-2022 El día 2 de Julio empezará en Dinamarca una nueva edición del Tour de France.

Favoritos claros: Roglic y Pogacar.

Favoritos: Vingegaard, Luis F. Martínez, los Yates...y alguno que puede aparecer por ahí de sorpresa, esto es el Tour.

Atención también a posibles ganadores de etapa: Alaphilippe, Van Aert y Van der Poel.

El recorrido: 6 etapas llanas, 6 de montaña, 7 de media montaña, 2 contrarreloj, 2 días de descanso y uno de traslado. Se empezará en Dinamarca, luego Bélgica, Francia y Suiza.

 
Leer más...

from BlogCiclismo

Vuelta-2022 Del 19 de Agosto al 11 de Septiembre.

Un recorrido típico de la Vuelta, muchas etapas con puertos no muy duros pero que pueden dar batalla. Esto último depende, claro está, de los corredores.

Van a ser:

-6 etapas llanas

-2 etapas medio llanas

-4 etapas de media montaña

-7 etapas de montaña

-1 Contrarreloj por equipos

-1 Contrarreloj individual

-3 días de descanso.

Favoritos: Roglic, Carapaz, Evenepoel, Hindley y luego Jack Haig, Ben O'Connor y Vlasov.

 
Leer más...