Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Feature Requests

Reply
 
Thread Tools Display Modes
Old 05-07-2018, 05:33 PM   #1
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default Add other divisions for metronome

maybe use numbers for beat divisions

abcedefg

where a,b,c,... represent beat positions

One can set the beat divisions like

4444

which would be 4 beats of 16th notes

use a ' for accent, '' for secondary accent, and standard unaccented(probably add another wav file entry

e.g.,

'4444

means the first beat of the first 4 16ths is accented.

'3'421

means a triplet is used for the first beat with the first division accented then a quadruple is used with the beat accented then twoplet is used for the 3rd without accent and a single beat is used for the last beat.

This type of notation is much more convenient that what currently is allowed and is far more expressible. Since only A,b,T, and . are used currently this does not conflict.

3''611

uses a secondary accent on the sextuplet and no primary accents.
InfiniteDimensionality is offline   Reply With Quote
Old 05-09-2018, 11:07 AM   #2
The-Zeronaut
Human being with feelings
 
Join Date: Mar 2009
Posts: 308
Default

+1
This has been asked by myself and many others for the last 10 years multiple times and STILL we are very near Reaper v6 and we don't have something as simple and necessary as metronome subdivisions for recording.
The-Zeronaut is offline   Reply With Quote
Old 05-09-2018, 12:56 PM   #3
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by The-Zeronaut View Post
+1
This has been asked by myself and many others for the last 10 years multiple times and STILL we are very near Reaper v6 and we don't have something as simple and necessary as metronome subdivisions for recording.
Yeah and just a few minutes to implement ;/ I guess some shiny new "feature" that creates 10 new bugs must be implemented first.

I think the metronome code needs to be abstracted and put in a script or separate module so those that actually want a better metronome can work on it rather than hoping for the developers to do it. Either way requires someone doing some work on it which doesn't seem to be a priority.
InfiniteDimensionality is offline   Reply With Quote
Old 05-09-2018, 01:14 PM   #4
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
Default

Quote:
Originally Posted by InfiniteDimensionality View Post
Yeah and just a few minutes to implement ;/
Armchair programmers are the best.
EvilDragon is offline   Reply With Quote
Old 05-09-2018, 01:23 PM   #5
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by EvilDragon View Post
Armchair programmers are the best.

Why do you need to insult me? Do you think just because you make an ignorant statement it must be true? I have written over 1M lines of code in my life and that makes me an armchair programmer? I'm sorry you have to resort to ad hominems out of the blue simply to make yourself feel better. I'm sorry your life existence is so banal that meaningless ad hominems make you feel better. I'd resort to your pathetic attacks but it is beneath me, It would be nice if it were beneath you too but it obviously isn't.

If you really believe that I am an "armchair programmer" for stating that it would take few minutes to write such code, in reaper, I have already written a polymetric metronome in reaper that took just a few hours in lua. Should I post the code? If so, what do I get in return? Will you grow up and learn to be a better human or continue behaving the same asinine way?

I can only conclude that people like you who have little skill in real programming must put down others to boost yourself up. How many languages do you know? How many lines of code? What serious projects have you done? Have you written anything of consequence or just flaky apps? A great java programmer? You love JS and php? Or maybe you are a ruby expert? Ever done any assembly programming? Real assembly like written a kernel mode device driver for hardware? Ever write a functional OS? Know any Haskell and category theory?


If anyone is the "armchair programmer"...

I suggest you check your ego at the door, it won't win you any battles here nor the war.

You might be suffering from https://en.wikipedia.org/wiki/Dunnin...3Kruger_effect

Last edited by InfiniteDimensionality; 05-09-2018 at 01:30 PM.
InfiniteDimensionality is offline   Reply With Quote
Old 05-09-2018, 02:09 PM   #6
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
Default

Wow, it was just a joke, hence the smiley at the end.

(I do programming for living, scripting Kontakt libraries, BTW. Did lots of them in the past 8 years, maybe you even used some of them.)
EvilDragon is offline   Reply With Quote
Old 05-09-2018, 02:14 PM   #7
karbomusic
Human being with feelings
 
karbomusic's Avatar
 
Join Date: May 2009
Posts: 29,260
Default

Ah the ole, "it'll only take five minutes" story. Anyone who's written that much code, knows they can expect this might be the case but have no idea if it is unless they have the source code. If you have code you think would be useful to the community, post it and ask for nothing in return beyond a voluntary donation or a thank you, like most everyone else here does. That's what makes this a great community.

Does anyone smell socks?
__________________
Music is what feelings sound like.

Last edited by karbomusic; 05-09-2018 at 06:08 PM.
karbomusic is offline   Reply With Quote
Old 05-09-2018, 08:22 PM   #8
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by EvilDragon View Post
Wow, it was just a joke, hence the smiley at the end.

(I do programming for living, scripting Kontakt libraries, BTW. Did lots of them in the past 8 years, maybe you even used some of them.)
Sorry, seemed like an attack to me. Yes, I have seen some of your work. Not impressed, no offense. Not that you are a bad coder but it's not like you have done anything advanced. Although I appreciate what you have done. But you should know better than most on here that what I have asked is not difficult to do.

Reaper already interprets AbT. in terms of metronomically, e.g.,

foreach(S in BeatPattern)
switch(S)
{
case 'A':
case 'b':
....
}


and all that has to be done is to extend the switch and compute a few different divisions(which should amount to changing a divisor). Depending on how it was originally coded it could actually take less than 5 mins.

It's unfortunate there are so many real armchair programmers here(at least one) as they really think it is complex to do when it is quite simple.
InfiniteDimensionality is offline   Reply With Quote
Old 05-09-2018, 08:41 PM   #9
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by karbomusic View Post
Ah the ole, "it'll only take five minutes" story. Anyone who's written that much code, knows they can expect this might be the case but have no idea if it is unless they have the source code. If you have code you think would be useful to the community, post it and ask for nothing in return beyond a voluntary donation or a thank you, like most everyone else here does. That's what makes this a great community.

Does anyone smell socks?
I didn't say it would, in all cases, take 5 mins and in fact I said a few. 1: It's a figure of speech. 2: it could take 5 mins. I won't post any code here because it seems that people don't appreciate others work, help, or suggestions. Lots of arrogance from what I've seen browsing the forums. Many childish mentalities and everyone has to chime in to try to put someone down just because they can to make themselves feel better.

Answer me this Mr. Karbo: Why attack someone when they are making a suggestion to improve reaper regardless of how long it takes? Is the real problem that I said it would be a quick implementation? Do you really believe that is the problem? As you said, you don't even know how long it would take. The fact is we know it won't take weeks and it is a relatively simple problem with most of the code already implemented since this is just extending a minor feature addition where much of the abstraction already exists. But you attack me based on the time I gave rather than anything of substance like the bulk of my post which offers a simple and direct syntax which solves much of the problem.

There is something seriously wrong with people who must attack others who offer an enhancement. This is precisely why I won't post my code. I will not aid and abet such mentalities. I have a quite large reaper library base I have designed, similar to Lokasenna's UI but not as nice and exhaustive, that I have used to build utilities for myself. The reason I'm saying this is not to instigate you, which I'm sure it will do, but simply to say that I will not contribute to people like you.



For example, here is a random script I've done just to prove I do have code. It is not part of my library which is in lua... I have removed lines to make it useless(I'm not saying the script is great either, just something I cobbled together quickly for a purpose of generating certain shapes quickly):




# modifies selected points in the TS to be transformed.

from reaper_python import *
from sws_python import *
from contextlib import contextmanager
import re, string, sys
import math
import shlex


@contextmanager
def undoable(message):
RPR_Undo_BeginBlock2(0)
try:
yield
finally:
RPR_Undo_EndBlock2(0,message,-1)

def msg(m):
RPR_ShowConsoleMsg(m)




def get_sel_env_chunk():
fs = SNM_CreateFastString("")

chunk = SNM_GetFastString(fs)
SNM_DeleteFastString(fs)
if chunk:
return chunk
else:
chunk = ""
return chunk

def set_sel_env_chunk(s):
fs = SNM_CreateFastString(s)
SNM_DeleteFastString(fs)

def CreateEnvelopePointsPerBar():
#dialog = RPR_GetUserInputs("Set selected envelope points values", 1, "Set selected points to (dB):", "0", 100)
#if dialog[0] != 1:
# return
#try:
# newValueDB = float(dialog[4])
# if newValueDB > 6.02: # upper limit
# newValueDB = 6.02
#except ValueError as e:
# msg(e)
# return

chunk = get_sel_env_chunk()
if chunk == "":
return "";
head = chunk[:chunk.find("PT") - 1]


# Not sure if necessary but update chunk (BeatsToTime has a bug that doesn't compute if beats are past last point)
chunk = get_sel_env_chunk()
if chunk == "":
return "";
head = chunk[:chunk.find("PT") - 1]
points = chunk[chunk.find("PT"):-3].split("\n")
#####

#msg(chunk); msg("\n\n");
#msg(points); msg("\n\n");

### Get User Data
Parameters = [
["First Point Value", "0"],
["Last Point Value", "0"],
["Shape(0 = straight, 1 = line, 2 = sinusoid, etc, 3 = ramp)", "0"],
["Create Points(-2 = per bar, -1 = per half bar, 0 = No, 1 = per beat, 2 = per two beats, 0.5 = per half beat, etc)", "0"],
["Method(0 = Absolute, 1 = add, 2 = multiply, 3 = modulate, etc)", "0"],
["Method Value", "0"],
["Shape Value 1", "1"],
["Shape Value 2", "1"],
]; Temp_Pa = []; Temp_Pb = [];

# Sinusoid creates a sinusoidal curve, the shape value 1 is the frequency, shape value 2 is the amplitude
# Exponential creates a exponential curve, the shape value 1 is the rate, shape value 2 is the amplitude

for e in Parameters:
Temp_Pa.append(e[0]);
Temp_Pb.append(e[1]);
Parameters = [",".join(Temp_Pa), ",".join(Temp_Pb)];

UserInputs = RPR_GetUserInputs("Envelope Generator", len(Temp_Pa), Parameters[0], Parameters[1], 30)
if UserInputs[0] == 0:
return;

## Setup variables:
fpv = float(UserInputs[4].split(",")[0]);
lpv = float(UserInputs[4].split(",")[1]);
shape = 0;
if len(UserInputs[4].split(",")) > 2:
#msg(UserInputs[4].split(","));
shape = int(float(UserInputs[4].split(",")[2]));

create = 0;
if len(UserInputs[4].split(",")) > 3:
create = int(float(UserInputs[4].split(",")[3]));
#msg("\n" + str(create) + "\n");


shapeValue2 = float(UserInputs[4].split(",")[7]);


##############


# Get time selection range in beats
tl = RPR_GetSet_LoopTimeRange(0, 0, 0, 0, 0)[2];
tr = RPR_GetSet_LoopTimeRange(0, 0, 0, 0, 0)[3];

#msg("Method: " + str(method) + " : " + str(methodValue) + " - Shape: " + str(shape) + " : " + str(shapeValue1) + " : " + str(shapeValue2) + "\n");

# Points must be sequential so we must find closest points to insert in between. 1 in the 5th position says the point is selected.
first_points = [];


for i, point in enumerate(points):

if float(npoint[1]) < tl:
first_points.append(point);
else:
if float(npoint[1]) <= tr:
if len(npoint) >= 6 and str(npoint[5]) == "1":
## Do calculations here
npt = float(npoint[1]);
npy = float(npoint[2]);
#msg("npy = " + str(npy) + "\n");

# Horizontal Line
if shape == 0:
y = fpv;

# Arbitrary Line

# Sinusoid

# Ramp
if shape == 3:

#msg("y = " + str(y) + "\n");

# Apply method type
if method == 0:
npy = y;
if method == 1:
npy = y + methodValue;
if method == 2:
npy = y * methodValue;

else:
last_points.append(point);
#msg(new_points); msg(" -y-\n\n");


#msg(chunk); msg("\n\n\n");
#end function



with undoable('Create envelope points between time selection'):
CreateEnvelopePointsPerBar()
#msg("\n---------------==========!Done!==========---------------\n");


Of course you can get upset for me not "sharing"(what have you done to share?) but I am under no obligation and, as I've said, I will not contribute to someone or a community who has such negative attitudes.
InfiniteDimensionality is offline   Reply With Quote
Old 05-09-2018, 10:46 PM   #10
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
Default

Quote:
Originally Posted by InfiniteDimensionality View Post
Sorry, seemed like an attack to me. Yes, I have seen some of your work. Not impressed, no offense. Not that you are a bad coder but it's not like you have done anything advanced.
You should check out how limited KSP is and then reconsider that statement. There is some tricky stuff I had to do within those constraints among the many libraries I've worked on (no floating point calculations and math functions until very recently, no proper functions with arguments and returns, no recursion, etc. etc. - and then do a heavily animated project like Embertone Arcane, for example)


(Also BTW, I do have an actual armchair I can do my programming in, ehehe. )

Last edited by EvilDragon; 05-10-2018 at 12:19 AM.
EvilDragon is offline   Reply With Quote
Old 05-09-2018, 11:52 PM   #11
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

Since you have great code skills, it is probably easier to build your own script which will generate metronome click on specific track by defined pattern according to your request. I can help with implementing it if you want, but it is ok if you don`t wanna get help from noobie scripter like me without any programming background.

Last edited by mpl; 05-10-2018 at 01:07 AM.
mpl is offline   Reply With Quote
Old 05-10-2018, 07:57 PM   #12
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by EvilDragon View Post
You should check out how limited KSP is and then reconsider that statement. There is some tricky stuff I had to do within those constraints among the many libraries I've worked on (no floating point calculations and math functions until very recently, no proper functions with arguments and returns, no recursion, etc. etc. - and then do a heavily animated project like Embertone Arcane, for example)


(Also BTW, I do have an actual armchair I can do my programming in, ehehe. )
You might be right. I'm not trying to down your skills, but just saying that there are a lot more difficult programming tasks out out there, usually involving advanced mathematics rather than any real programming difficulties.

I would suggest you spend a bit of time programming in your armchair and tell me how it works out for you! You might not like it as much as you think.

Sorry if I came off as an ass, it just seemed like you were attacking me for saying it would be an easy task, which I still stand by. Putting a smiley after an "attack" doesn't necessary mean much. Probably a gut reaction from so many people attacking others needlessly(a common meme now) and without any real substance. I have no problem discussing the issues and solving problems but it seems that usually the topic is derailed in some form or another over some unimportant statement that really is irrelevant to the original issue.
InfiniteDimensionality is offline   Reply With Quote
Old 05-10-2018, 08:09 PM   #13
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by mpl View Post
Since you have great code skills, it is probably easier to build your own script which will generate metronome click on specific track by defined pattern according to your request. I can help with implementing it if you want, but it is ok if you don`t wanna get help from noobie scripter like me without any programming background.
I have already done so which I use to practice polymetric time(that uses a graphical "clock" based visual). Essentially multiple metronomes with an easy way to define the polymeter. The problem is not the programming nor the metronome but the interfacing with reaper. Unless you have a way for a script it to work with 'click source' it is useless for what I and others need it for. If so, this is precisely what I was asking that reaper modular so we could but I have not seen such functionality in the API.

The problem with scripts is that defer has a built in latency that is not great for metronomes. Any lag can add a few ms to any click and ruin the metronome timing. Since reaper doesn't any built in scheduler for deferring, many cycles are wasted for timing. I had to implement a predictive scheduler to reduce glitchiness but at the cost of inaccurate graphics timings(android has a similar problem). Although I don't know why you have to make this about ego. You are obviously not a "noob scripter".
InfiniteDimensionality is offline   Reply With Quote
Old 05-10-2018, 08:24 PM   #14
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

I did not meant script running at background or, say, triggering midi to RS5k with metronome click, but an items generator (or midi item sent to RS5k) running once. It could be built with small GUI which let you set click sources wav files and define pattern.

Speaking about running at background task, you can try something with JSFX, but I think it is a lot harder to implement.

Last edited by mpl; 05-10-2018 at 09:07 PM.
mpl is offline   Reply With Quote
Old 05-10-2018, 11:54 PM   #15
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by mpl View Post
I did not meant script running at background or, say, triggering midi to RS5k with metronome click, but an items generator (or midi item sent to RS5k) running once. It could be built with small GUI which let you set click sources wav files and define pattern.

Speaking about running at background task, you can try something with JSFX, but I think it is a lot harder to implement.
Well, the click source seems to be the easiest. I Suppose one could generate a midi item but that will still require more work by the user.

Although, I suppose one could create a script that creates a track and adds an VSTi that acts as the metronome click source.

To me, this starts defeating the whole purpose. Why not just write an independent app that does it all?

What is nice about reapers metronome is that it interfaces with reaper. It is connected to reapers tempo track, click source, and time line. It is easy to use.

I really see no reason why anyone would object to have reaper devs handle this. It is not a difficult thing and it would require far more work to create a script to do it... although the script could at a much nicer interface.

What I'd rather see if a combination approach. Reaper can call an extern function that triggers a click or gives reaper the timing of a clicks per bar.

The approach I use is similar to the follow, but the problem is that it doesn't interface with reaper:

defer("click();", nextClick)

where nextClick is simply a differential time delay to call click(). It is filled with the time. E.g., for 120 bpm, nextClick = 0.5.

I have simulated this with my own metronome and the problem is that it is not very accurate. It could be a priority issue or scripting speed issue.

I really don't see the issue of extending the BeatPattern syntax to allow for higher divisions. It IS a really basic programming task and most of the work is already done.

I'm not arguing that it can't be done, and if you would like to create a cool graphical poly metronome with customizable, storable patterns, and multiple configurable click sounds then I'm all up for it. I'd probably use it if it worked well(no timing issues) but it wouldn't necessarily solve the original problem.
InfiniteDimensionality is offline   Reply With Quote
Old 05-11-2018, 01:41 AM   #16
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

In case of audio items generator I don't see a possible timing issues if i would set timebase "beats: position only". In case of midi item there is no issue ever.

Defer calls is 30-60Hz, so I would not use background scripts for stuff like that.
mpl is offline   Reply With Quote
Old 05-11-2018, 05:13 AM   #17
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by mpl View Post
In case of audio items generator I don't see a possible timing issues if i would set timebase "beats: position only". In case of midi item there is no issue ever.

Defer calls is 30-60Hz, so I would not use background scripts for stuff like that.

What I mean by timing issues is generating clicks inside the script by playing audio files directly.

I use pythons winsound through lua using some hacks and have minor to major timing issues at fast tempos which complex polymeters. Not sure the bottleneck but it is not important. I am using defer and it seems to be faster than 60hz on my machine but I haven't checked but if not that would explain the problem.

In any case, if you want to conjure up some cool metronome app then I'd support you in your struggle. Probably be easy to do and probably someone as already done something useful.



which is only recorded at 8fps(the dots are responsive(grow when hit) but I did have to reduce the refresh rate of the gui to allow for better timing so it does run at a low fps(probably 15fps)

It wouldn't be hard for me to modify the script to add more features but it does what I need it to do and I'm not going to bother investing the time when there are so many a**holes who benefit from other peoples time and energy and do not appreciate them or their effort. If I'm in need some some script or utility I always just roll my own anyways except under rare circumstances and this is precisely why I use reaper. If you want to create metronome script in whatever way then it is your business of course.

Last edited by InfiniteDimensionality; 05-11-2018 at 05:25 AM.
InfiniteDimensionality is offline   Reply With Quote
Old 05-12-2018, 12:32 PM   #18
Masi
Human being with feelings
 
Join Date: Sep 2015
Posts: 690
Default

Quote:
Originally Posted by InfiniteDimensionality View Post
It wouldn't be hard for me to modify the script to add more features but it does what I need it to do and I'm not going to bother investing the time when there are so many a**holes who benefit from other peoples time and energy and do not appreciate them or their effort.
You're welcome.

Masi
Masi is offline   Reply With Quote
Old 05-12-2018, 04:30 PM   #19
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

Quote:
Originally Posted by InfiniteDimensionality View Post
It wouldn't be hard for me to modify the script to add more features but it does what I need it to do and I'm not going to bother investing the time when there are so many a**holes who benefit from other peoples time and energy and do not appreciate them or their effort.
Maybe I'm reading this incorrectly and if so I apologize but the Reaper community and this board specifically is filled with some of the most helpful people I've ever encountered. One of the first posts I ever made someone replied with actual reascript code and said try this. And it worked.

I've been doing this a long time and I've never seen a more helpful community and count myself as one of the incredibly grateful ones. There's so many talented scripters and coders on this board that donate their time on a daily basis. I don't think I've ever encountered a single a-hole who benefits from other peoples time and energy and doesn't appreciate them or their effort. Until possibly just now...
Klangfarben is offline   Reply With Quote
Old 05-12-2018, 05:00 PM   #20
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by Klangfarben View Post
Maybe I'm reading this incorrectly and if so I apologize but the Reaper community and this board specifically is filled with some of the most helpful people I've ever encountered. One of the first posts I ever made someone replied with actual reascript code and said try this. And it worked.

I've been doing this a long time and I've never seen a more helpful community and count myself as one of the incredibly grateful ones. There's so many talented scripters and coders on this board that donate their time on a daily basis. I don't think I've ever encountered a single a-hole who benefits from other peoples time and energy and doesn't appreciate them or their effort. Until possibly just now...
So, you assume because your encounters have been positive that they all are positive and that I'm an asshole? Great attitude. You found it necessary to butt in a conversation that didn't pertain to you so you could add your 2c and I'm the asshole? Maybe you just provided your own counterexample?

Your whole post is irrelevant because I never said the community was not helpful or that the community was ungrateful... That is all something you have conjured up to justify you attacking me and it proves my point, I would say thanks but it would mean nothing to you. I was talking about specific instances of how some people behave and some people act, for example, yourself. You should ask yourself why you seem to have the need to attack other people in which you were not part of the conversation and also to distort what someone you disagree with has said simply to attack them. You might not see what you have done is an attack but maybe if you would have dropped the last line "Until now...". You can put a banana and ice cream on a pile a feces but it doesn't turn it in to a banana split.

Maybe next time you should not just randomly jump in on a conversation that you have no context for and make an assumption and jump to conclusions unless you want to be part of the problem rather than the solution.
InfiniteDimensionality is offline   Reply With Quote
Old 05-12-2018, 05:09 PM   #21
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

Godspeed there buddy.
Klangfarben is offline   Reply With Quote
Old 05-13-2018, 01:08 PM   #22
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by Klangfarben View Post
Godspeed there buddy.
Rather than turn tail and run, it would be nice to rectify the situation:

The first guy to comment agrees with my request. The second guy attacks me and calls me an armchair programmer. The 3rd guy attacks me and says essentially the same thing. The 4th guy chimes in is condescending by pretending to be a novice programmer as mockery. Then you come along and say you have never seen any people attacking other people and everyone is helpful as can be so I must be the problem... Yet there is absolutely no hostility in anything I say until I am attacked. When I defend myself I am attacked more.

Do you seriously believe it is my fault? I am the one who started all this nonsense? If so, point out exactly where I attacked anyone before I was attacked or deserved attacking in the first place. If you think I am wrong for defending myself against attacks then you should have no problem with me attacking you and you should not defend yourself.

Maybe you simply got upset about me not bending over and releasing all my own code? You expect that I should have to do that so you can benefit? You say you are grateful to others for doing so but then you are ungrateful when someone decides not to play that game? That doesn't sound like you are grateful to those that do share their work but expect them to and if they don't you get upset with them? Of course, I said the reason I don't release my own code is precisely because of people that are ungrateful. Your logic is that there are no people out there.

So which is it? Or is there something else I'm missing? It's important we realize what really is going on so it doesn't happen again. Also, are you saying The-Zeronaut is wrong for not jumping on the bandwagon? Why was able to chime in with a comment that didn't involve personal attacks? Or am I mistaken?

I just want it to be clear who the real people are at fault here. Who's ever fault it is should learn their lesson. When pigs fly I suppose.
InfiniteDimensionality is offline   Reply With Quote
Old 05-13-2018, 01:11 PM   #23
Masi
Human being with feelings
 
Join Date: Sep 2015
Posts: 690
Default

Quote:
Originally Posted by InfiniteDimensionality View Post
Your whole post is irrelevant because I never said the community was not helpful or that the community was ungrateful...
With all the hatred you carefully put into this thread it was also my impression that you meant the whole community. Anyway, while I can understand that you're annoyed by the remark be EvilDragon, I don't get it why your're still raging on. BTW, is he one of those "ungratefuls"? I don't think he is. And if he's not in a mood he can also be quite helpful.

Masi
Masi is offline   Reply With Quote
Old 05-13-2018, 01:36 PM   #24
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

Quote:
Why do you need to insult me?



I suggest you check your ego at the door, it won't win you any battles here nor the war.

Lolz- now that's what i call "tko."

+ don't think it's asking for too much for a modern 'daw' - who needs bells n whistles if the basics ain't covered 1st...?
go InfiniteDimensionality. get yr monies worth...lol. =)
people should not fear to post out of ridicules or trollings from others-- speak with your hands! voice your thoughts! fear not!
Bri1 is offline   Reply With Quote
Old 05-13-2018, 01:45 PM   #25
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

Quote:
Originally Posted by InfiniteDimensionality View Post
I just want it to be clear who the real people are at fault here. Who's ever fault it is should learn their lesson. When pigs fly I suppose.
Not turning tail. Just consider this a wasted effort is all. Was simply trying to make two points. One, this community is unbelievably helpful. And number two, it really does help to get someone to pay attention to your feature request when you don't go scorched earth on everyone (even if you maybe think you haven't).

Just be nice to people dude. You'll find you will get a LOT more help. Even if you don't like them. Even if you disagree with them. Even if you think they are ungrateful assholes.

P.S. I completely agree with your feature request btw, as do a lot of other users I'm sure. I just would have gone about it in a much different fashion.

P.P.S Seriously, godspeed. If you think your approach is the best way or the right way or any other kind of way then vaya con dios, vaya con buddha and vaya con great void.
Klangfarben is offline   Reply With Quote
Old 05-13-2018, 07:50 PM   #26
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by Klangfarben View Post
Not turning tail. Just consider this a wasted effort is all. Was simply trying to make two points. One, this community is unbelievably helpful. And number two, it really does help to get someone to pay attention to your feature request when you don't go scorched earth on everyone (even if you maybe think you haven't).

Just be nice to people dude. You'll find you will get a LOT more help. Even if you don't like them. Even if you disagree with them. Even if you think they are ungrateful assholes.

P.S. I completely agree with your feature request btw, as do a lot of other users I'm sure. I just would have gone about it in a much different fashion.

P.P.S Seriously, godspeed. If you think your approach is the best way or the right way or any other kind of way then vaya con dios, vaya con buddha and vaya con great void.

Um scorched earth? Are you delusional? Show me where I attacked anyone? Shouldn't you be addressing what you are saying to the other guys? The guys that started it?

The fact is, you just jumped on the bandwagon. You saw tour buddies attacking me and you just jumped in. Again, show me the proof! You go on some abstract hypothetical that it is still my fault. You don't know when to man up and just admit you were wrong and just dig a deeper hole.
InfiniteDimensionality is offline   Reply With Quote
Old 05-14-2018, 03:27 AM   #27
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

If you urgently need custom metronome patterns, simply create your own "click source" by adding a track with a looped MIDI item and ReaSynth as FX. You can create any pattern imaginable.

Last edited by juliansader; 05-14-2018 at 04:29 AM.
juliansader is offline   Reply With Quote
Old 05-14-2018, 05:19 AM   #28
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 12,096
Default

Quote:
Originally Posted by juliansader View Post
If you urgently need custom metronome patterns, simply create your own "click source" by adding a track with a looped MIDI item and ReaSynth as FX. You can create any pattern imaginable.
And then save as track templates (including track items) for future use.
nofish is offline   Reply With Quote
Old 05-14-2018, 07:42 AM   #29
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

heh- gotta luv a good ol bit o bickering--besides--if you ever let a silly metronome hold you back then...well..yeah.let it.
simple answers work sometimes- make a million variations and hit *save* bruv
i find clicks irritating tbh--rarely use them--prefere straight up beats,or live percussions for playing along with..to get yr groovez on eh.
robots need to be whipped into human realities> to get that groove on. eh?
try to play as much you can- the clicks soon vanish once you lock into your own timings..
Bri1 is offline   Reply With Quote
Old 05-14-2018, 08:14 AM   #30
The-Zeronaut
Human being with feelings
 
Join Date: Mar 2009
Posts: 308
Default

Quote:
Originally Posted by juliansader View Post
If you urgently need custom metronome patterns, simply create your own "click source" by adding a track with a looped MIDI item and ReaSynth as FX. You can create any pattern imaginable.
Quote:
Originally Posted by nofish View Post
And then save as track templates (including track items) for future use.
Too complicated...but as always with reaper instead of adding something basic natively just relay on weird workarounds or use a reascript made by some guy in his basement somewhere that you don't know for how long it will be supported or updated....

If they are able to create spectral edits/ARA2 and other amazing stuff ..
A F*CKING metronome with subdivisions that are available on other daws for A LONG TIME as it is something really basic and necessary for modern recordings shouldn't be THAT DIFFICULT to implement.
there are Feature request for this since 2007....EVERY year there is one or more users that request this...
The-Zeronaut is offline   Reply With Quote
Old 05-14-2018, 11:51 PM   #31
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by The-Zeronaut View Post
Too complicated...but as always with reaper instead of adding something basic natively just relay on weird workarounds or use a reascript made by some guy in his basement somewhere that you don't know for how long it will be supported or updated....

If they are able to create spectral edits/ARA2 and other amazing stuff ..
A F*CKING metronome with subdivisions that are available on other daws for A LONG TIME as it is something really basic and necessary for modern recordings shouldn't be THAT DIFFICULT to implement.
there are Feature request for this since 2007....EVERY year there is one or more users that request this...
Be careful there Zeronaut... the goon squad won't be too far behind! You don't want to step over the line and be berated for not being an obedient slave.
InfiniteDimensionality is offline   Reply With Quote
Old 05-15-2018, 01:05 AM   #32
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

^lol- o that line? crossed that years ago--still going strong.
once you upset the locals-there's no comming back --rofl.
divided they stand-together they fall. heh. =)
"and a 1 n and a 2 anda 3 anda 4.. 1elephant 2elephant 3elephant...4 .."
Bri1 is offline   Reply With Quote
Old 05-15-2018, 01:44 AM   #33
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

If a certain feature (or lack thereof) is really, truly important to some users' workflow, shouldn't they be delighted at any solution or workaround that allows them to immediately continue with their productive work?

The "MIDI metronome track" solution that I suggested above is actually easier to implement than Cubase's Click Pattern Editor, and more versatile.

Another option is to (temporarily) change the time signature to smaller divisions. For example, to get 16th note patterns, simply change 4/4 to 16/16 while recording, and then change it back later.

There are also free metronome VST plugins available, but I am not aware of any that are more advanced than REAPER's built-in metronome.

Quote:
Too complicated...but as always with reaper instead of adding something basic natively just relay on weird workarounds or use a reascript made by some guy in his basement somewhere that you don't know for how long it will be supported or updated....
I think this skepticism is misplaced: Reascripts might actually be more reliable than native functions when it comes to support and updates, since the code is open source and can easily be updated by anyone else in the REAPER community.
juliansader is offline   Reply With Quote
Old 05-15-2018, 02:59 AM   #34
emarsk
Human being with feelings
 
Join Date: Dec 2016
Posts: 218
Default

To be honest, if I need something as complex as some of the first post examples, I think I'd just lay down a MIDI track or a sample track.

That said, the more features the better


I'm a bit confused by the examples though:

In '4444, are all the 1/16 notes played? Would a "regular" 4/4 metronome be written as '1111 ?

Let's call the accent "A", the non-accent ".", and the silence "_".

In '3'421, would you hear the sequence A..A...... (with the rhythm changes of course)?

As I use the metronome, I find being able to insert silent beats really helpful, especially with odd rhythms of fast subdivisions. How would you write patterns with silent notes? For example a triplet with the sequence A_. ?

--

Now, about the attitude… InfiniteDimensionality, you're been gratuitously attacked, no doubt about that. But then you replied pissing on about the whole community at large, saying that it's full of ungrateful assholes and that you won't share anything because of that.
Not saying that this community is asshole-free, but to me, it looks like the ones who share their scripts (and their knowledge) are rewarded with big amounts of gratitude in this forum. Maybe not big amounts of donations, I guess, if that's what you mean. I see that some of them share some things and request payment for other stuff, though.

Quote:
Should I post the code? If so, what do I get in return?
Probably several "thank you". What do you get if you don't post the code?

As of now, you are requesting a feature, while clearly stating that you could share but you won't, so who's acting ungrateful here?

Quote:
There is something seriously wrong with people who must attack others who offer an enhancement.
You're absolutely right. There are a few very vocal people around here that will bash every feature request or improvement idea (and I find this outrageously stupid). But if everybody stops sharing and constructively participating, everybody loses, and the community dies. Everybody has a choice: to contribute to the community's health, or to its demise.
emarsk is offline   Reply With Quote
Old 05-15-2018, 07:42 PM   #35
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by emarsk View Post
To be honest, if I need something as complex as some of the first post examples, I think I'd just lay down a MIDI track or a sample track.

That said, the more features the better


I'm a bit confused by the examples though:

In '4444, are all the 1/16 notes played? Would a "regular" 4/4 metronome be written as '1111 ?

Let's call the accent "A", the non-accent ".", and the silence "_".

In '3'421, would you hear the sequence A..A...... (with the rhythm changes of course)?

As I use the metronome, I find being able to insert silent beats really helpful, especially with odd rhythms of fast subdivisions. How would you write patterns with silent notes? For example a triplet with the sequence A_. ?
Depends on what kind of music you do. There are a lot more complex metrical music than typical western music. Having a metronome to help lock in to some of the different meters would be useful to some... And since it is an extension that does not take away from anything is and easy to implement that it should be implement. If the suggestions I gave are not sufficient then some other method could be used. The main point is that having a more useful metronome would be helpful to some.

the number value divides the subdivisions. 4444 would be 4 beats with 4 subdivisions 4. That is, 16 16th notes. 3333 would be 12/8. ' just creates an accident for the start of the beat so it is pointless.

Using the notation above doesn't allow for arbitrary methods of silencing divisions. It is a weakness. The notation could be extended to allow it if desired using, say, groupings

(000)(001)(010)(011)(100)(101)(110)(111)

which is 8 beats each beat divided in to triplets with every possible combination of silences. This is probably overkill though. Having silent divisions and subdivisions shouldn't generally cause much of a problem and, in fact, can be helpful. This is not so much for generating rhythms as it is meter.

Te more complex the meter the more information it will be required to express it in notation. I was trying to give a simple way that should be very easy to implement that should work with the code that already exists rather than complexify things. I'd personally rather see a much more robust metronome with many cool features but that is overkill for what I'd like to be able to do.

The main usefulness of the request is because it fits nicely(almost surely) with what already is coded in reaper.

Reaper can already divide in to two and three's using it's current code. To divide in arbitrary numbers is just changing a dividend from 2 or 3 to 4,5,6,7 or whatever digit is used in the beat pattern string.

At most, if the divisions were hard code, e.g., D1 = 0.5*beatLength; for single divisions, then loop will be required to calculate the divisions... but still very basic programming. for(i = 0; i < Divisions; i++) D[k] = beatLength/Divisions*i; Then D[k] is the offset from the start of the beat to start of the division.

The point is that it it should take really no more than an hour to do and that is assume worse case. Should really take just a few minutes to implement, maybe longer to debug depending on compile times and such.

Quote:
--

Now, about the attitude… InfiniteDimensionality, you're been gratuitously attacked, no doubt about that. But then you replied pissing on about the whole community at large, saying that it's full of ungrateful assholes and that you won't share anything because of that.
Not saying that this community is asshole-free, but to me, it looks like the ones who share their scripts (and their knowledge) are rewarded with big amounts of gratitude in this forum. Maybe not big amounts of donations, I guess, if that's what you mean. I see that some of them share some things and request payment for other stuff, though.

At least we have someone who is rational and can see I was attacked before I attacked.

1. I never said the WHOLE community at large was anything. I never even used that terminology. That is something you picked up on because Klangfarben made it up. karbomusic was the first to use that term, not me. In fact, I didn't use the term ungrateful either:

This is exactly what I said:

"I won't post any code here because it seems that people don't appreciate others work, help, or suggestions."

Which is a factual statement that was totally distorted, bandwagoned, and manipulated for those people who I am precisely talking about... and I am made out to be the bad guy. People manipulate the story to hear what they want to hear and then others listen to them and then manipulate the story even further. Those people doing this are the bad guys. Responding to it is not bad, someone has to address them. They will try to paint the story so they are right.

The fact is, I suggested a feature then immediately got jumped on(the 2nd reply) and several guys after that jumped in the mix and, of course, defending myself is just seen as some guy trying to make trouble because he won't let the other guys beat the shit out of him, tell him how he deserves it and should sit back and take it. That is effectively what has been done except I haven't sat back, I'm not wrong, and I won't take it.

Again, you can blame me all day long for defending myself against being attacked, but the real blame must always come from those that started it. Of these guys acting like children never would have started it then we wouldn't be wasting our time on such a conversation. Maybe we would have talked about meaningful shit about the original post instead of getting derailed.





Quote:

Probably several "thank you". What do you get if you don't post the code?

As of now, you are requesting a feature, while clearly stating that you could share but you won't, so who's acting ungrateful here?
Yes, some people will appreciate it. I'm not talking about those people. I'm talking about people who don't appreciate what others do for them.

What you want me to do is share code I have written on my own for myself with others so they get to benefit but also give me the option not to do it. When I choose that option then I am ungrateful because I should share. Why then give me the option in the first place? To be able to share things one must have to have the option not to share... else there is no such thing as sharing. Forced Sharing? You are required to share? None of that makes sense.

I choose not to release my code for several reasons: 1. I don't believe in helping people who don't deserve it. 2. My code is not meant to be released because it may be buggy or incomplete.

So, if I am forced to "share" will I be force to support it also?

You see, the whole topic of me sharing my own code is irrelevant and was just an asinine attempt to derail the original post.


Quote:

You're absolutely right. There are a few very vocal people around here that will bash every feature request or improvement idea (and I find this outrageously stupid). But if everybody stops sharing and constructively participating, everybody loses, and the community dies. Everybody has a choice: to contribute to the community's health, or to its demise.
True, but also people should all be grateful. You see how I was attacked. You agreed that they started it. So to claim that the whole community is grateful is wrong. I posted a FR and was attacked right out the starting gate. No real basis except someone was pissed cause I said it would be an easy programming task which they feel it must be much more difficult.

Basically after the first blow all else is irrelevant. If someone hits you, send you in to a deranged mental psychosis from the damage of the blow and you lose it and kill them, is it your fault? If you had 0 probability of attacking them before they attacked you and they attack you did they not cause the attack? Should they not be blamed? If they were to hit you and kill you through a similar set of unlikely events would they not be blamed too?

If people didn't attack other people then the world would be a much better place. So, yes, I will attack people who attack me rather than stick my head in the ground. People who start shit need to be held accountable and not be allowed to try and flip it and blame others so they look just. You may not like my approach, but that should be irrelevant until the people causing the problems are dealt with first. Maybe if they learn they can't get away with it they will stop? Maybe the whole point of why they do it is because no one attacks them back. Note that I'm not attacking them for the sake of attacking by attacking them based on their nonsense reasons to attack. There is a big difference even if it doesn't seem like it.
InfiniteDimensionality is offline   Reply With Quote
Old 05-15-2018, 08:43 PM   #36
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

Quote:
Originally Posted by InfiniteDimensionality View Post
I'm not going to bother investing the time when there are so many a**holes who benefit from other peoples time and energy and do not appreciate them or their effort.
No, this is what you wrote that I took issue with. While it might not have been your intention, it sure seemed to me like calling "so many" people a-holes who "do not appreciate them or their effort" was pretty much a direct attack on the community. Hard to take it any other way. Up until the point you called people ungrateful a-holes, I really didn't care and didn't comment until you did just that.

Last edited by Klangfarben; 05-15-2018 at 08:53 PM.
Klangfarben is offline   Reply With Quote
Old 05-16-2018, 12:35 AM   #37
InfiniteDimensionality
Human being with feelings
 
Join Date: Jun 2017
Posts: 187
Default

Quote:
Originally Posted by Klangfarben View Post
No, this is what you wrote that I took issue with. While it might not have been your intention, it sure seemed to me like calling "so many" people a-holes who "do not appreciate them or their effort" was pretty much a direct attack on the community. Hard to take it any other way. Up until the point you called people ungrateful a-holes, I really didn't care and didn't comment until you did just that.
Yes, exactly. You are the hate monger. You read what you wanted in to what I said. "So many" does not mean all, it doens't even mean half.. or 1/3 or even 10%. It is a variable amount that could go from 1 to infinity. So many out of 2 is 1, else it would be none or all. So many out of a million might be 1000 or 999999.

The fact is, you illness that you have decided to turn "so many" in to all. How convent for you to try and spread it. You could blame it on your lack of grammatical understanding but then a normal response would be asked for me to clarify instead of jumping to the conclusion you wanted.

The fact is, you just wanted to spread your hate and you thought you found a good target. To justify in your own mind that you are not the problem you must twist things like read something in to something, go with the bandwagon since if everyone's doing it then it must be right, etc.


Remember, you contributed to someone else attacking me. It's no different then when say, a white and black person are fighting and some racist will jump in and take sides just based on skin color. You just wanted to fight and you assume, because of your "racism" that your buddies must be right in fighting. You already had some issue which is why you read "so many" as all. Already looking for something to justify your attack.

And this proves my "so many" claim. Note that even if it were false before you replied and what triggered you(you could have claimed that there were zero a$$holes) it seems to have been proven that there are at least a few... and if there are a few there are probably more than a few when one looks under the cracks.

What I'd rather you do is realize you were wrong and learn your lesson that you are the problem... or at least half the problem. Maybe I am the same way but it's pretty conclusive that you have some issues. This way, maybe you can save yourself and others a bit of trouble in the future before you let yourself jump to false conclusions. It's one thing to make a mistake, everyone does, but to try pretend you didn't make a mistake is the problem. I'm sure this isn't the first time and I'm sure it won't be the last, but it would be nice if you and others make less mistakes.

If your whole issue was I said "All", which I didn't but which you read, then there are several outs. You could simply claim that it is not all and then I would have to justify from there.

I think if you really ask yourself why you got offended, it almost surely has to do with the fact that I said I would not share because there are a bunch of a$$holes here. You either got upset because you thought I called you an a$$hole or because I wouldn't share. I didn't call you an a$$hole as I didn't say everyone was and nor do I have to share. It shouldn't offend anyone that I don't want to share something. That is greedy and if you getting upset for me being "greedy" then you have to get upset at yourself too.

So on both accounts there is no way I could have said anything should offend any sane person. If you misread what I said you should ask why you misread it... but in the end, you should ask why you got upset over something that I am almost totally right in saying. 1. There are a$$holes in this community. 2. Anyone have the right to not release their personal code for any reason they deem. You chose to distort those facts to suit some outcome you desired. That is a far deeper problem. (if you don't think those are facts then feel free to convince me that they are not facts... and then I will say I was wrong)
InfiniteDimensionality is offline   Reply With Quote
Old 05-16-2018, 01:57 AM   #38
emarsk
Human being with feelings
 
Join Date: Dec 2016
Posts: 218
Default

Quote:
Originally Posted by InfiniteDimensionality View Post
(000)(001)(010)(011)(100)(101)(110)(111)
The grouping notation with parenthesis is wonderful would be perfectly integrated with the current syntax: your second example ( '3'421 ) could be written as (Abb)(Abbb)(bb)b .

Quote:
This is not so much for generating rhythms as it is meter.
You could argue that beat subdivision (binary or ternary or anything else) is also rhythm, not meter. As I said, for me it's really useful (let's say essential), to be able to silence beats, because if I write a fast 15/16 rhythm, the 16th notes are too fast and too many to be useful as a metronome. So for my use case - and yours - "rhythm" is really part of "meter".

Quote:
Reaper can already divide in to two and three's using it's current code.
… its …

---

Quote:
I never said the WHOLE community at large […]

This is exactly what I said:

"I won't post any code here because it seems that people don't appreciate others work, help, or suggestions."
If you'd written "some people" I'd agree, but as it is, it seems to me to imply a general attitude from most people. But maybe my English is not good enough to catch the nuance.
Anyway, the exact scope is largely irrelevant: responding to an attack with an attack - even if rightful - is a matter of attitude and fuels the flames, giving others the desire (and, often, the opportunity) to further attack back, and so on.

Quote:
Forced Sharing? You are required to share?
Of course not. My sentence about ungratefulness was (obviously?) meant to be slightly provocative (in a positive way, hopefully).
emarsk is offline   Reply With Quote
Old 05-16-2018, 07:43 AM   #39
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

Quote:
Originally Posted by InfiniteDimensionality View Post
The fact is, you illness that you have decided to turn "so many" in to all
Here's a thought. How about not calling anyone an asshole. Be that a few, several or "so many".

You do realize "so many" is a lot of people you just called assholes right? Maybe take a mea culpa on that one and call it a day.
Klangfarben is offline   Reply With Quote
Old 05-16-2018, 08:09 AM   #40
Bri1
Banned
 
Join Date: Dec 2016
Location: England
Posts: 2,432
Default

Quote:
Here's a thought. How about not calling anyone an asshole.

^this may be good advice--it is best leaving ego at any door--then people may be more welcomming!
we could all take a leaf out of cockos book here-- ~they~ focus primarily on topics and issues of topics {mainly scanning for bugs+glitches} - very rarely are they ever insulting,negative or condescending in any way,shape or form..
this is obviously good practice in a 'business' sense--but also a personal 1.


this forum is not about you,me,him,her or any1 in particular--it's about the whole as a whole!
teamwork helps a lot--if people like to war and bicker--go join the army or some crap!--in fact,no, do not join any army-- they all stink-- as they fight each others.


remember--what you do not share in this lifetime may be a waste of your own time and efforting ..if you believe in only '1 chance' - then make it a good1 eh?!
by sharing,you help others to expand--we all want that expansion (i think?) --so-- try to share all we have,if we can,in whatever way we see suitable to do that. =)
tictoc.divide divide-- back to unity.
Bri1 is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 09:40 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.